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>前的"<"丢了 显示不出来啊?

解决方案 »

  1.   

    估计是你没有正确的指定字符集,XML默认是UTF-8的你encoded可能不是UTF-8
      

  2.   

    但我输出的文件并不是xml,是个任意的扩展名。只是包含这个类似xml的节点罢了。
      

  3.   

    你用UltraEdit打开,然后用二进制查看,看看</Data>处的左括号是不是对应ASCII码为 3C ,如果是的话就没有问题,只是显示的时候,可能恰好与某个中文的一半匹配了,就显示不出来了