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中截取中文乱码
大家都知道,一个汉字在gb2312下面是占2个字节,用传统的substr肯定会出问题 ,所以应该用,mb_substr和mb_strcut两个函数 在这个之前,打开php.ini打开php_mbstr ...
- OC 之 谓词
NSPredicate 分类: Objective-C iOS XCode Mac2012-10-26 17:26 10557人阅读 评论(1) 收藏 举报 简述:Cocoa框架中的NSPredica ...
- isKindOfClass:和isMemberOfClass:-b
isKindOfClass: Returns a Boolean value that indicates whether the receiver is an instance of given c ...
- 从一到二:利用mnist训练集生成的caffemodel对mnist测试集与自己手写的数字进行测试
通过从零到一的教程,我们已经得到了通过mnist训练集生成的caffemodel,主要包含下面四个文件: 接下来就可以利用模型进行测试了.关于测试方法按照上篇教程还是选择bat文件,当然python. ...
- Oralce 字符串截取
update E_SYS_STRATEGY set sconfigvalue=(select Substr((select sconfigvalue from E_SYS_STRATEGY where ...
- 【VS调试】C#读写Windows 7注册表时抛出“不允许所请求的注册表访问权”的解决办法
原文:[VS调试]C#读写Windows 7注册表时抛出"不允许所请求的注册表访问权"的解决办法 项目 - 属性 - 安全性,"使用ClickOnce",修改a ...
- c++实现委托
#include "stdafx.h" #include <iostream> #include <string> using namespace std; ...
- thinkphp中的session()方法
系统提供了Session管理和操作的完善支持,全部操作可以通过一个内置的session函数完成. 用法 session($name, $value='') 参数 name(必须):如果传入数组 则表示 ...
- 生成树的计数(基尔霍夫矩阵):UVAoj 10766 Organising the Organisation SPOJ HIGH - Highways
HIGH - Highways In some countries building highways takes a lot of time... Maybe that's because th ...
- 数学(动态规划,GCD):COGS 469. [NOI2010]能量采集
能量采集 ★★☆ 输入文件:energy2010.in 输出文件:energy2010.out 简单对比 时间限制:1 s 内存限制:512 MB [问题描述] 栋栋有一块长方形的地, ...