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 ...
随机推荐
- NSButton添加事件
-(void)addButton { NSButton* pushButton = [[NSButton alloc] initWithFrame: NSMakeRect(, , , )]; push ...
- ZROI2018普转提day6t1
传送门 分析 记录区间最大值,线段树上二分找比这个点大的最靠前位置即可 代码 #include<iostream> #include<cstdio> #include<c ...
- Luogu 4363 [九省联考2018]一双木棋chess
发现数据范围很小,想到状压dp,然后就愣住不会了. 表示太菜了并没有接触过轮廓线dp这种操作. 首先发现合法的操作过程中一定是这样子的: 按照行来看发现每一行单调不递增. 我们用$1$来表示竖着的轮廓 ...
- Luogu 3942 将军令
之前写那个(Luogu 2279) [HNOI2003]消防局的设立的时候暴力推了一个树形dp,然后就导致这个题不太会写. 贪心,先把树建出来,然后考虑按照结点深度排个序,每次取出还没有被覆盖掉的深度 ...
- Spring MVC 简介
- 数组最后一个元素的 引用在 foreach 循环之后仍会保留。建议使用 unset() 来将其销毁
数组最后一个元素$arr = array( 1 , 2 , 3 , 4 );foreach ( $arr as & $value ) { $value = $value ...
- 源码方式安装rabbitmq
由于工作环境中属于内网,yum安装方式不可用,所以需要采用源码进行rabbitmq的安装.rabbitmq是基于erlang环境进行运行的,所以需要先按照erlang环境,才能运行rabbitmq-s ...
- Django会话,用户和注册之用户认证
通过session,我们可以在多次浏览器请求中保持数据, 接下来的部分就是用session来处理用户登录了. 当然,不能仅凭用户的一面之词,我们就相信,所以我们需要认证. 当然了,Django 也提供 ...
- ubuntu - 14.04,安装JDK1.8(JAVA程序需要的开发、运行环境)
一,如何删除低版本的open JDK? 在ubuntn的软件中心中,如果输入"java",我们会看到open JDK,但是最高版本是1.7,也有1.6版本的,如果我们安装上去,可能 ...
- 洛谷P4360 [CEOI2004]锯木厂选址(斜率优化)
传送门 我可能根本就没有学过斜率优化…… 我们设$dis[i]$表示第$i$棵树到山脚的距离,$sum[i]$表示$w$的前缀和,$tot$表示所有树运到山脚所需要的花费,$dp[i]$表示将第二个锯 ...