Java.io.DataInputStream.readUTF() 方法
描述
java.io.DataInputStream.readUTF() 方法读取已使用修改后的 UTF-8 格式编码的字符串。 字符串从 UTF 解码并以 String 形式返回。
声明
以下是 java.io.DataInputStream.readUTF() 方法的声明 −
public final String readUTF()
参数
NA
返回值
此方法返回一个 unicode 字符串。
异常
IOException − 如果流关闭或发生任何 I/O 错误。
EOFException − 如果输入流已经结束。
UTFDataFormatException − 如果字节不代表有效的修改 UTF-8 编码。
示例
下面的例子展示了 java.io.DataInputStream.readUTF() 方法的使用。
package com.tutorialspoint;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
public class DataInputStreamDemo {
public static void main(String[] args) throws IOException {
InputStream is = null;
DataInputStream dis = null;
FileOutputStream fos = null;
DataOutputStream dos = null;
String[] s = {"Hello", "World!!"};
try {
// create file output stream
fos = new FileOutputStream("c:\\test.txt");
// create data output stream
dos = new DataOutputStream(fos);
// for each string in string buffer
for(String j:s) {
// write string encoded as modified UTF-8
dos.writeUTF(j);
}
// force data to the underlying file output stream
dos.flush();
// create file input stream
is = new FileInputStream("c:\\test.txt");
// create new data input stream
dis = new DataInputStream(is);
// available stream to be read
while(dis.available()>0) {
// reads characters encoded with modified UTF-8
String k = dis.readUTF();
// print
System.out.print(k+" ");
}
} catch(Exception e) {
// if any error occurs
e.printStackTrace();
} finally {
// releases all system resources from the streams
if(is!=null)
is.close();
if(dis!=null)
dis.close();
if(fos!=null)
fos.close();
if(dos!=null)
dos.close();
}
}
}
让我们编译并运行上面的程序,这将产生下面的结果 −
Hello World!!

