数据输入/输出流允许应用程序以与机器无关的方式从底层输入流中读取基本Java数据类型,也就是说,当读取一个数据时,不必在关心这个数值应当是什么字节
DataInputStream类与DataOutputStream类的构造方法
DataInputStream(InputStream in):
使用指定的基础InputStream创建一个DataInputStream
DataOutputStream(OutputStream out):
创建一个新的数据输入流,将数据写入指定基础输出流
DataOutputStream类提供了如下3种写入字符串的方法
writeBytes(String s)
writeChars(String s)
writeUTF(String s)
2.方法
writeBytes只是将字符串中的每一个字符的低字节内容写入目标设备中
writeChars将字符串中的每一个字符的两个字节的内容都写到目标设备中
writeUTF将字符串按照UTF编码后的字节长度写入目标设备,然后才是每一个字节的UTF编码
DataInputStream类只提供一个readUTF()方法返回字符串。要在一个持续的字节流读取一个字符串,如果没有特殊的标记作为一个字符串的结尾,并且事先也不知道这个字符串的长度,也就无法知道读取到什么位置才是这个字符串的结束
DataOutputStream类中只有writeUTF()方法向目标设备中写入字符串的长度,所以也只能准确的读回写入字符串