Java-IO读写文件简单操作
Java中读写文件的关键在于节点流和处理流的的选取上,而节点流和处理流又分为面向字节、面向字符两种处理模式,因此,需要根据实际的情况选择合适的处理模式,一般而言,往往尽量尝试使用面向字符的处理模式,如果程序代码无法编译成功,再尝试使用面向字节的的处理模式。
1.节点流和处理流的分类(包括了面向字节和面向字符)

2.读文件
(1)创建文件路径对象
// 通过File创建文件路径对象
File filePath= new File("src/com/test/io/test.txt");
(2)创建节点流对象(面向字符的处理模式)
// 创建节点流对象(面向字符的处理模式)
FileReader fr = new FileReader(filePath);
(3)创建处理流包装节点流对象(面向字符的处理模式):
// 创建处理流包装节点流对象(面向字符的处理模式)
BufferedReader br = new BufferedReader(fr);
(4)读取文件内容(ready():告诉这个流是否准备好被读取。返回值类型:boolean)
// 读取文件内容
while(br.ready()){
System.out.println(br.readLine());
}
(5)关闭处理流、节点流等
// 关闭处理流、节点流等
br.close();
fr.close();
(6)测试
新建文件:test.txt

代码文件:demo.java
package com.test.io;
import java.io.*;
public class demo {
public static void main(String[] args) throws IOException {
// 1.通过File创建文件路径对象
File filePath= new File("src/com/test/io/test.txt");
try {
// 2.创建节点流对象(面向字符的处理模式)
FileReader fr = new FileReader(filePath);
// 3.创建处理流包装节点流对象(面向字符的处理模式)
BufferedReader br = new BufferedReader(fr);
// 4.读取文件内容
while(br.ready()){
System.out.println(br.readLine());
}
// 5.关闭处理流、节点流等
br.close();
fr.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
运行截图:

3.写文件
(1)创建文件路径对象
// 通过File创建文件路径对象
File filePath = new File("src/com/test/io/test2.txt");
(2)创建节点流对象(面向字符的处理模式)
// 创建节点流对象(面向字符的处理模式)
FileWriter fw = new FileWriter(filePath);
(3)创建处理流包装节点流对象(面向字符的处理模式):
// 创建处理流包装节点流对象(面向字符的处理模式)
BufferedWriter bw = new BufferedWriter(fw);
(4)写入数据
//写入数据
bw.write("ABCDED\r\n");
bw.write("一二三四");
(5)关闭处理流、节点流等
// 关闭处理流、节点流等
bw.close();
fw.close();
(6)测试:
代码文件:demo.java
package com.test.io;
import java.io.*;
public class demo {
public static void main(String[] args) {
// 1.通过File创建文件路径对象
File filePath = new File("src/com/test/io/test2.txt");
try {
// 2.创建节点流对象(面向字符的处理模式)
FileWriter fw = new FileWriter(filePath);
// 3.创建处理流包装节点流对象(面向字符的处理模式)
BufferedWriter bw = new BufferedWriter(fw);
// 4.写入数据
bw.write("ABCDED\r\n");
bw.write("一二三四");
// 5.关闭处理流、节点流等
bw.close();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行截图:

Java-IO读写文件简单操作的更多相关文章
- Java-IO读写文件简单操作2
承接Java-IO读写文件简单操作,这里再次写个小demo巩固一下知识点. 代码文件:demo.java package com.test.demo; import java.io.*; public ...
- java io读写文件
java io读写文件相关阅读:http://www.cnblogs.com/wing011203/archive/2013/05/03/3056535.html public class DemoI ...
- java(IO)读写文件乱码转换UTF-8问题
java(IO)读写文件乱码转换UTF-8问题 读取文件 String Content = ""; // 文件很长的话建议使用StringBuffer try { FileInpu ...
- java IO流文件的读写具体实例(转载)
引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能 ...
- JAVA多线程读写文件范例
在写之前先声明,本文是基于之前在博客园网站上检索到的一份JAVA多线程读写文件的示例,我在写自己的程序时是在那位作者写的基础上做了改良,但已不记得原文的地址.如果有知情者,烦请帖出地址,我在此文上加入 ...
- java StringBuffer读写文件
java StringBuffer读写文件 StringBuffer的优势 较String:String每更新一次就会new一个新的对象出来,更新次数上去之后,内存开销太大.而StringBuffer ...
- Java IO读写中文各种乱码问题 【转】
Java IO读写中文各种乱码问题 转自:http://blog.sina.com.cn/s/blog_484ab56f0101muzh.html java.io.*读写中文各种乱码,很费劲.不完全解 ...
- Qt的Model/View Framework解析(数据是从真正的“肉(raw)”里取得,Model提供肉,所以读写文件、操作数据库、网络通讯等一系列与数据打交道的工作就在model中做了)
最近在看Qt的Model/View Framework,在网上搜了搜,好像中文的除了几篇翻译没有什么有价值的文章.E文的除了Qt的官方介绍,其它文章也很少.看到一个老外在blog中写道Model/Vi ...
- Perl读写Excel简单操作
Perl读写Excel简单操作 使用模块 Spreadsheet::ParseExcel Spreadsheet::WriteExcel 读Excel #!/usr/bin/perl -w use s ...
随机推荐
- backstop无法访问
解决方案:重新build代码,重新启动虚拟机.再等一会儿,就OK了.
- java全栈day33--html
本天要完成6个任务,并且布局静态页面(首页)详细分为六个部分 如下 网站信息页面案例(字体标签.排版标签) 网站图片信息页面案例(图片标签) 网站友情链接页面案例(列表标签) 网站首页案例(表格标签 ...
- Html.DropDownListFor 练习
需要创建一个List<SelectListItem>数据集,如下 使用已经存在FruitCategoryEntity.cs类的IEnumerable<FruitCategory> ...
- webapi 返回json
web api 默认的已 xml 格式返回数据 现在开发一般都是以 json 格式为主 下面配置让 webapi 默认返回 json ,在需要返回 xml 时只需要加一个查询参数 datatype=x ...
- 基于pythpn的深度学习 - 记录
[基于pythpn的深度学习] 环境: windows/linux-ubuntu Tensorflow (基于anaconda) *安装 (python3.5以上不支持) ...
- python升级到版本3
一.下载python3 下载python3版本 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0a3.tgz 二.安装依赖包 sudo ...
- Spark大数据处理 之 RDD粗粒度转换的威力
在从WordCount看Spark大数据处理的核心机制(2)中我们看到Spark为了支持迭代和交互式数据挖掘,而明确提出了内存中可重用的数据集RDD.RDD的只读特性,再加上粗粒度转换操作形成的Lin ...
- Redis及虚拟机windows两种环境安装配置
---恢复内容开始--- Redis /rae dis/是一个开源的Key-Value数据库.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链 ...
- win10系统重装
问题描述 win10开启热点网卡坏了,没折腾好.然后把系统网卡折腾坏了. 所以重装了系统,写下我的环境从零到晚上的过程 1安装系统 用WePE安装win10,镜像采用:cn_windows_10_en ...
- c#随笔-正则