1. 如何实现数据的换行?
(1)
package com.himi.fileoutputstream; import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; /**
*
* 如何实现数据换行?
*
*/ public class FileOutputStreamDemo4 { public static void main(String[] args) throws IOException {
//创建字节输出流对象
FileOutputStream fos = new FileOutputStream("fos3.txt");
//写入数据
for(int i=0; i<10; i++) {
fos.write(("Love"+i).getBytes());
} //释放资源
fos.close(); } }
运行效果如下:我们这里没有换行,不是我们想要的。
这里没有换行是因为你写入数据的时候,没有写入换行符,写入换行符即可。
(2)如何写入换行符?,如下:
import java.io.FileOutputStream;
import java.io.IOException; /**
*
* 如何实现数据换行?
* 这里没有换行是因为你写入数据的时候,没有写入换行符,写入换行符即可。
*
*不同系统的换行符不一样:
* windows:\r\n
* linux:\n
* Mac:\r
* 而常见的高级记事本软件是可以识别任意换行符的(比如Eclipse自带记事本软件)
*/ public class FileOutputStreamDemo4 { public static void main(String[] args) throws IOException {
//创建字节输出流对象
FileOutputStream fos = new FileOutputStream("fos3.txt");
//写入数据
for(int i=0; i<10; i++) {
fos.write(("Love"+i).getBytes());
fos.write("\n".getBytes());
} //释放资源
fos.close(); } }
运行效果如下:
追溯到工程目录下,如下:
使用Notepad++打开,如下:
使用windows自带记事本打开,如下:
(3)修改代码如下:
package com.himi.fileoutputstream; import java.io.FileOutputStream;
import java.io.IOException; /**
*
* 如何实现数据换行?
* 这里没有换行是因为你写入数据的时候,没有写入换行符,写入换行符即可。
*
*不同系统的换行符不一样:
* windows:\r\n
* linux:\n
* Mac:\r
* 而常见的高级记事本软件是可以识别任意换行符的(比如Eclipse自带记事本软件)
*/ public class FileOutputStreamDemo4 { public static void main(String[] args) throws IOException {
//创建字节输出流对象
FileOutputStream fos = new FileOutputStream("fos3.txt");
//写入数据
for(int i=0; i<10; i++) {
fos.write(("Love"+i).getBytes());
fos.write("\r\n".getBytes());
} //释放资源
fos.close(); } }
运行之后发现,上面所有的记事本软件都换行了,包括windows自带的记事本软件,如下:
2. 如何实现数据的追加?
使用构造方法:FileOutputStream(String name, boolean append)
参数append为true,表示追加;反之false,为不追加。
代码如下:
package com.himi.fileoutputstream; import java.io.FileOutputStream;
import java.io.IOException; /**
* 如何实现数据的追加写入?
* 使用构造方法:FileOutputStream(String name, boolean append)
* 参数append为true,表示追加;反之false为不追加
*/ public class FileOutputStreamDemo5 { public static void main(String[] args) throws IOException {
//创建字节输出流对象
//FileOutputStream fos = new FileOutputStream("fos3.txt"); //FileOutputStream(String name, boolean append)
FileOutputStream fos = new FileOutputStream("fos3.txt",true);
//写入数据
for(int i=0; i<10; i++) {
fos.write(("Love"+i).getBytes());
fos.write("\r\n".getBytes());
} //释放资源
fos.close(); } }
运行效果如下: