DataOutputStream类提供了3个写入字符串的方法:
----public writeChars(String s)
----public writeBytes(String s)
----public writeUTF(String s)
对应的DataInputStream类只提供了readUTF的方法;
看了下java视频,也不知道具体怎么解决的,还是先学习下能看懂的吧:
下面给段java代码进行测试:
----public writeChars(String s)
----public writeBytes(String s)
----public writeUTF(String s)
对应的DataInputStream类只提供了readUTF的方法;
看了下java视频,也不知道具体怎么解决的,还是先学习下能看懂的吧:
下面给段java代码进行测试:
package cn.com;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class DataStreamTest {
public static void main(String[] args) {
// writing data to a File or to a FileDescriptor
try {
FileOutputStream fos = new FileOutputStream("count.txt");
BufferedOutputStream bos = new BufferedOutputStream(fos);
DataOutputStream dos = new DataOutputStream(bos);
//写入UTF长度
dos.writeUTF("ab中国");
dos.writeBytes("ab中国");
dos.writeChars("ab中国");
// 只需关闭最上层流对象
dos.close();
FileInputStream fis = new FileInputStream("count.txt");
BufferedInputStream bis = new BufferedInputStream(fis);
DataInputStream dis = new DataInputStream(bis);
System.out.println(dis.readUTF());
byte[] bus = new byte[1024];
int len = dis.read(bus);
System.out.println(new String(bus, 0, len));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}