当前位置: 代码迷 >> J2SE >> 这段代码为什么输出0d0a,而不是0a,小弟我已经使用了字节流操作了
  详细解决方案

这段代码为什么输出0d0a,而不是0a,小弟我已经使用了字节流操作了

热度:112   发布时间:2016-04-24 13:39:41.0
这段代码为什么输出0d0a,而不是0a,我已经使用了字节流操作了。
import   java.io.*;
public   class   FileTest   {
  public   static   void   main(String   args[])     {
      try   {

byte   buffer[]   =   new   byte[]{0x0a};

FileOutputStream   os   =   new   FileOutputStream( "WriteFile.txt ");

os.write(buffer);
//   关闭输出流
os.close();
System.out.println( "已保存到WriteFile.txt! ");
        }   catch   (IOException   ioe)   {
System.out.println(ioe);
        }   catch   (Exception   e)   {
System.out.println(e);
        }

   
  }
}



------解决方案--------------------
不会,帮你顶一下.
------解决方案--------------------
应该输出一个不可打印字符,ascii码为10
------解决方案--------------------
因为楼主你写的 0X0a 刚好是换行符 \n (unix换行符)的二进制值

如果你使用诸如ultraedit这样子会把unix换行符转成windows换行符\r\n(0d0a)的编辑器的话,就会出现你描述的问题

其实你把0X0a换成其他的就没有问题了
  相关解决方案