Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 什么';writeUTF和writeChars的区别是什么?_Java_Io_Objectoutputstream - Fatal编程技术网

Java 什么';writeUTF和writeChars的区别是什么?

Java 什么';writeUTF和writeChars的区别是什么?,java,io,objectoutputstream,Java,Io,Objectoutputstream,writeUTF和writeChars有什么区别?(ObjectOutputStream的方法) 此外,我还没有在ObjectInputStream中找到相应的ReadChar。使用Unicode值 将字符串s中的每个字符写入输出流,以 顺序,每个字符两个字节。如果s为null,则为NullPointerException 被抛出。如果s.length为零,则不写入任何字符。 否则,首先写入字符s[0],然后写入字符s,依此类推; 最后写入的字符是s[s.length-1]。对于每个字符,两个

writeUTF和writeChars有什么区别?(ObjectOutputStream的方法) 此外,我还没有在ObjectInputStream中找到相应的ReadChar。

使用Unicode值

将字符串s中的每个字符写入输出流,以 顺序,每个字符两个字节。如果s为null,则为NullPointerException 被抛出。如果s.length为零,则不写入任何字符。 否则,首先写入字符s[0],然后写入字符s,依此类推; 最后写入的字符是s[s.length-1]。对于每个字符,两个 字节实际上是先写高阶字节,完全按照 writeChar方法的方式

使用稍加修改的UTF-8版本

将两个字节的长度信息写入输出流,然后 通过修改字符串中每个字符的UTF-8表示 s如果s为null,则引发NullPointerException。中的每个字符 字符串s被转换为一个由一个、两个或三个字节组成的组, 取决于字符的值


writeUTF
以UTF-8格式编码写入文本,并以文本长度为准,因此
readUTF
知道要从流中读取多少字符


writeChars
将文本写入一个2字节字符序列,无长度。要读取它,我们应该使用
readChar
方法,我们需要知道写入了多少个字符。

即使DataOutputStream中有writeChar方法,DataInputStreamref中也没有readChars方法: