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(); } }
运行效果如下:我们这里没有换行,不是我们想要的。

这里没有换行是因为你写入数据的时候,没有写入换行符,写入换行符即可。
(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(); } }
运行效果如下:

Java基础知识强化之IO流笔记20:FileOutputStream写出数据实现换行和追加写入的更多相关文章
- Java基础知识强化之IO流笔记17:FileOutputStream构造方法使用
1. 可以参照之前写的笔记: Android(java)学习笔记167:Java中操作文件的类介绍(File + IO流) 2. FileOutputStream(常用的)构造方法: FileOu ...
- Java基础知识强化之IO流笔记71:NIO之 NIO的(New IO流)介绍
1. I/O 简介 I/O ( 输入/输出 ):指的是计算机与外部世界或者一个程序与计算机的其余部分的之间的接口.它对于任何计算机系统都非常关键,因而所有 I/O 的主体实际上是内置在操作系统中的. ...
- Java基础知识强化之IO流笔记68:Properties和IO流集合使用
1. Properties和IO流集合使用 这里的集合必须是Properties集合: public void load(Reader reader):把文件中的数据读取到集合中 public v ...
- Java基础知识强化之IO流笔记66:Properties的概述 和 使用(作为Map集合使用)
1. Properties的概述 Properties:属性集合类.是一个可以和IO流相结合使用的集合类. 该类主要用于读取以项目的配置文件(以.properties结尾的文件 和 xml文件). ...
- Java基础知识强化之IO流笔记22:FileInputStream / FileOutputStream 复制文本文件案例1
1. 使用字节流FileInputStream / FileOutputStream 复制文本文件案例: 分析: (1)数据源:从哪里来 a.txt -- 读取数据 -- FileInpu ...
- Java基础知识强化之IO流笔记16:IO流的概述和分类
1. IO流的分类 流向: (1)输入流:读取数据到内存 (2)输出流:写入数据到硬盘(磁盘) 操作的数据类型: (1)字节流:操作的数据是字节 ...
- Java基础知识强化之IO流笔记01:异常的概述和分类
IO流操作的时候会出现很多问题,java中叫作异常,所以我们先介绍一下异常: 1. 程序的异常:Throwable(Throwable类是java中所有异常或错误的超类) (1)严重问题:Error ...
- Java基础知识强化之IO流笔记56:IO流练习之 登录注册IO版
1. 登录注册IO版的Java项目框架,如下: 2. 具体代码实现: (1)User.java(cn.itcast.game): package cn.itcast.pojo; /** * 这是用户 ...
- Java基础知识强化之IO流笔记42:IO流总结(图解)
1. IO流总结(图解)
随机推荐
- php流行笔试题及答案
1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量(1)中:而链接到当前页面的URL记录在预定义变量(2)中. 答:echo $_SERVER['PHP_SELF']; echo ...
- [css][移动设备]禁止横竖屏时内容自动调整
参考:http://www.kankanews.com/ICkengine/archives/106643.shtml iOS下当竖屏转向横屏的时候,发现内容字体会自动变大,通过各种方法设置字体大小都 ...
- Apache:To Config The Vhost of Django Project
It is not a good idea to use dev server in Production Environment. Apache or Nginx are good choice.B ...
- 《C和指针》章节后编程练习解答参考——6.1
<C和指针>——6.1 6.1 题目: 编写一个函数,在一个字符串中进行搜索,查找另一子字符串中出现的字符. 函数原型如下: char *find_char(char const *sou ...
- GNU DAEMON THREAD <1>
尝试写一个简单的守护进程 /** @File daemon.c * * Build a daemon process for game * */ #include <unistd.h> # ...
- linux系统下root用户和普通用户的时区不一致
1. 发现这个问题是在root下执行 date -R 和 普通用户下执行 date -R,发现时区不一致 2. 在一些linux机器下,发现是一致的 3. 什么原因呢?找了半天,最后发现 时区一致的机 ...
- bcb 如何在DLL中捕捉系统级异常
http://topic.csdn.net/t/20031023/09/2385627.html -------------------------------------------------- ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(三)
1. gzip [-cdtv#] filename:压缩.参数:-c:将压缩的数据输出到屏幕上,可通过数据重定向进行处理:-d:解压缩的参数:-t:可以用来检验一个压缩文件的一致性,查看文件有无错误: ...
- Qt入门(10)——调试技术
命令行参数当你运行Qt程序时,你可以指定几个命令行参数来帮助你调试.-nograb 应用程序不再捕获鼠标或者键盘.当程序在Linux下运行在gdb调试器中时这个选项是默认的.-dograb 忽略任何隐 ...
- 【转】Java 字符串常用操作(String类)
原文网址:http://www.cnblogs.com/freeabyss/archive/2013/05/15/3187057.html 字符串查找 String提供了两种查找字符串的方法,即ind ...