这段代码为什么输出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换成其他的就没有问题了