Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

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(); } }

运行效果如下:我们这里没有换行,不是我们想要的。

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

这里没有换行是因为你写入数据的时候,没有写入换行符,写入换行符即可。

(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(); } }

运行效果如下:

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

追溯到工程目录下,如下:

使用Notepad++打开,如下:

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

使用windows自带记事本打开,如下:

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

(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自带的记事本软件,如下:

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

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(); } }

运行效果如下:

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入

上一篇:OpenVZ管理


下一篇:vector iterator not incrementable For information on how your program can cause an an assertion Failure, see the Visual c + + documentation on asserts