Java 中的 readUTF() 和 writeUTF() 方法
Unicode (UTF) - 代表 Unicode 转换格式。它由 Unicode 联盟开发。如果您想创建使用多个字符集的字符的文档,则可以使用单个 Unicode 字符编码来实现。它提供了 3 种类型的编码。
UTF-8 - 它以 8 位单元(字节)表示,UTF8 中的一个字符可以是 1 到 4 个字节长,这使得 UTF8 成为可变宽度。
UTF-16-8 - 它以 16 位单元(短整型)表示,它可以是 1 或 2 个短整型长,这使得 UTF16 成为可变宽度。
UTF-32 - 它以 32 位单元(长整型)表示。它是一种固定宽度格式,长度始终为 1 个“长整型”。
java.io.DataOutputStream 类的 writeUTF() 方法接受一个 String 值作为参数,并使用修改后的 UTF-8 编码将其写入当前输出流。因此,要将 UTF-8 数据写入文件 -
java.io.DataOutputStream 的 readUTF() 方法读取以修改后的 UTF-8 编码表示的数据,将其转换为 String 并返回。因此,要将 UTF-8 数据读取到文件 -
示例
以下 Java 示例将 UTF-8 数据写入文件,并使用 writeUTF() 和 readUTF() 方法将其读回。
import java.io.DataInputStream; import java.io.EOFException; import java.io.FileInputStream; import java.io.IOException; import java.io.DataOutputStream; import java.io.FileOutputStream; public class Read_Write_UTF { public static void main(String args[]) { FileOutputStream fileOut = null; DataOutputStream outputStream = null; FileInputStream fileIn = null; DataInputStream inputStream = null; StringBuffer buffer = new StringBuffer(); try { //Instantiating the FileOutputStream class fileOut = new FileOutputStream("D:\utfText.txt"); //Instantiating the DataOutputStream class outputStream = new DataOutputStream(fileOut); //Writing UTF data to the output stream outputStream.writeUTF("టుటోరియల్స్ పాయింట్ కి స్వాగతిం"); outputStream.flush(); System.out.println("Data inserted into the file"); //Instantiating the FileInputStream class fileIn = new FileInputStream("D:\utfText.txt"); //Instantiating the DataInputStream class inputStream = new DataInputStream(fileIn); //Reading UTF data from the DataInputStream while(inputStream.available()>0) { buffer.append(inputStream.readUTF()); } } catch(EOFException ex) { System.out.println(ex.toString()); } catch(IOException ex) { System.out.println(ex.toString()); } System.out.println("Contents of the file: "+buffer.toString()); } }
输出
Data inserted into the file Contents of the file: టుటోరియల్స్ పాయింట్ కి స్వాగతిం
广告