DataInputStream的readUTF()方法能够从输入流中读取采用UTF—8字符编码的字符串 5
DataInputStream的readUTF()方法能够从输入流中读取采用UTF-8字符编码的字符串,错误,为什么?...
DataInputStream的readUTF()方法能够从输入流中读取采用UTF-8字符编码的字符串,错误,为什么?
展开
4个回答
展开全部
借鉴一下别人观点:
DataInputStream的readUTF方法
读入一个已使用 UTF-8 修改版格式编码的字符串。readUTF 的常规协定是:该方法读取使用 UTF-8 修改版格式编码的 Unicode 字符串的表示形式;然后以 String 的形式返回此字符串。
首先读取两个字节,并使用它们构造一个无符号 16 位整数,构造方式与 readUnsignedShort 方法的方式完全相同。该整数值被称为 UTF 长度,它指定要读取的额外字节数。然后成组地将这些字节转换为字符。每组的长度根据该组第一个字节的值计算。紧跟在某个组后面的字节(如果有)是下一组的第一个字节.
如有疑问 :请参阅 http://zhidao.baidu.com/question/175398066.html
DataInputStream的readUTF方法
读入一个已使用 UTF-8 修改版格式编码的字符串。readUTF 的常规协定是:该方法读取使用 UTF-8 修改版格式编码的 Unicode 字符串的表示形式;然后以 String 的形式返回此字符串。
首先读取两个字节,并使用它们构造一个无符号 16 位整数,构造方式与 readUnsignedShort 方法的方式完全相同。该整数值被称为 UTF 长度,它指定要读取的额外字节数。然后成组地将这些字节转换为字符。每组的长度根据该组第一个字节的值计算。紧跟在某个组后面的字节(如果有)是下一组的第一个字节.
如有疑问 :请参阅 http://zhidao.baidu.com/question/175398066.html
展开全部
eadUTF()和读取一个UTF-8编码的文件不是一个概念。
你翻翻源码就会发行,readUTF()是从流里面读一个指定长度的UTF-8编码的字符串,长度保存在流的开头2个字节。
readUTF()通常和DataOutputStream的 writeUTF(String str)方法配套使用。
你翻翻源码就会发行,readUTF()是从流里面读一个指定长度的UTF-8编码的字符串,长度保存在流的开头2个字节。
readUTF()通常和DataOutputStream的 writeUTF(String str)方法配套使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是的可以
也可以这样
File file = new File(filePath);
OutputStream out = new FileOutputStream(file);
OutputStreamWriter outWriter = new OutputStreamWriter(out,“utf-8”);
writer = new BufferedWriter(outWriter);
也可以这样
File file = new File(filePath);
OutputStream out = new FileOutputStream(file);
OutputStreamWriter outWriter = new OutputStreamWriter(out,“utf-8”);
writer = new BufferedWriter(outWriter);
追问
这句话 说是错误的 ,为什么 ???
DataInputStream的readUTF()方法能够从输入流中读取采用UTF-8字符编码的字符串,错误,为什么?
追答
InputStream is = request.getInputStream();
DataInputStream in = new DataInputStream(is);
in.readUTF();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
返回的是Unicode
包含如下
UTF-8、UTF-16、UTF-32等统一国际编码
包含如下
UTF-8、UTF-16、UTF-32等统一国际编码
追问
什么意思
追答
readUTF返回的编码格式取决于输入的编码格式
如果是UTF-16编码的, 返回的就是UTF-16编码的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询