nr5*_*nr5 2 java outputstream fileoutputstream
下一行的Ascii值是10.所以我尝试了这个......
FileOutputStream os = new FileOutputStream(f, true);
os.write(10); // this should get me to next line ?
os.write(b); // b is a byte array...
Run Code Online (Sandbox Code Playgroud)
您应该负责管理跨平台线分隔符,这可以通过多种方式检索:
System.getProperty("line.separator")System.lineSeparator() (只有Java7)String.format("%n")然后你应该小心翼翼地使用DataOutputStream缠绕你的FileOutputStream,这是因为你可以选择更好的方法
writeChars(String str)writeBytes(String str)writeUTF(String str)这样您就可以使用最适合您的情况.
还要注意,直接在流上写一个字节数组会创建二进制数据,这与使用换行符(与文本相反)有些相反.