我正在编写一个用于赋值的java服务器,当我将它们写入包装流和包装流时,我发现了一些奇怪的行为,这会导致任何问题吗?据我所知,它可以,但如何?请各位赐教。
作为一个例子:
OutputStream os = new OutputStream(...);
PrintWriter pw = new PrintWriter(os);
我想在PrintWriter和OutputStream中写两个。
答案 0 :(得分:0)
<击> 撞击>
<击>要从基于字节的流转移到基于字符的流,您需要使用OutputStreamWriter
:
OutputStreamWriter是从字符流到字节流的桥梁。
那就是:
OutputStream os = ...
OutputStreamWriter osw = new OutputStreamWriter(os, "UTF-8");
PrintWriter pw = new PrintWriter(osw);
击> 我认为问题在于您需要指定编码,因为构造函数PrintWriter(OutputStream out)
使用的默认编码可能对您的数据输入不正确:
OutputStream os = ...
PrintWriter pw = new PrintWriter(os, "UTF-8");