ByteArrayOutputStream写入问题,字符丢了
ByteArrayOutputStream byteOutputStream =new ByteArrayOutputStream();
FileOutputStream outputStream=new FileOutputStream(outputName);//输出流
byteOutputStream.write( " <Data> ".getBytes());
byteOutputStream.write(encoded,0,encoded.length);
byteOutputStream.write( " </Data> ".getBytes());
byteOutputStream.writeTo(outputStream);
encoded是加密后的二进制字符数组byte[],都是乱码。
显示结果是: <Data> 遵 <WE示?彆,?/Data>
为什么 </Data> 前的 " < "丢了 显示不出来啊?
------解决方案--------------------估计是你没有正确的指定字符集,XML默认是UTF-8的
你encoded可能不是UTF-8
------解决方案--------------------你用UltraEdit打开,然后用二进制查看,看看 </Data> 处的左括号是不是对应ASCII码为 3C ,如果是的话就没有问题,只是显示的时候,可能恰好与某个中文的一半匹配了,就显示不出来了