java IO之文件输入输出流
来源:互联网 发布:泰语翻译中文软件 编辑:程序博客网 时间:2024/05/21 06:26
java IO之文件输入输出流
程序运行期间,大部分的数据都是在内存中,但是当程序关闭之后,内存中的数据便会消失。如果我们想让数据可以永久保存,就需通过文件输入输出流与文件建立联系,将需要的数据存入文件中。
1. FileInputStream类
参考博文:FileInputStream类
2. FileOutputStream类
参考博文:FileOutputStream类
3. FileReader类和FileWriter类
由于汉字占用两个字节,使用FileInputStream从文件中读取数据与使用FileOutputStream向文件中写入数据,可能会造成文件的乱码,使用FileReader和FileWriter便可以避免这种现象,因为在java中采用的Unicode字符,而在Unicode中汉字被看作是一个字符。
FileReader和FileWriter是与FileInputStream和FileOutputStream这两种字节流相对应的两种字符流,它们分别是Reader和Write的子类。
FileReader的构造方法如下:
Ø FileReader(String name):使用给定的名称name创建一个FileReader对象;
Ø FileReader (File file):使用File对象创建一个FileReader对象。
Ø
FileWriter的构造方法如下:
Ø FileWriter(String name):使用给定的名称name创建一个FileWriter对象;
Ø FileWriter (File file):使用File对象创建一个FileWriter对象。
Ø FileWriter(String fileName,boolean append):使用给定的名称name创建一个FileWriter对象,如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。
Ø FileWriter(File file, booleanappend):使用File对象创建一个FileWriter对象,如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。
FileReader流顺序的读取文件,只要不关闭流,每次调用read方法就顺序地读取源中其余的内容,直到源的末尾或流被关闭。FileReader的方法可以参考FileInputStream的方法。
FileWriter流顺序的写入文件,只要不关闭流,每次调用write方法就顺序地把内容写入到源中,直到流被关闭或者发生异常。FileWriter的常用方法可以参考博文:Java IO之输入输出流 中Writer类的常用方法。
实例:用FileWriter向C盘中的test.txt中写入键盘录入的数据,然后用FileReader读取输出到控制台。
代码如下:
import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.Scanner;public class FileDemo { public staticvoidmain(String[] args){ File file; char[] data=newchar[512]; int b; try { file=new File("C:"+File.separator+"test.txt"); FileWriter writer=new FileWriter(file); Scanner sc=new Scanner(System.in); System.out.println("请输入测试内容:"); String str=sc.nextLine(); writer.write(str); writer.close(); FileReader reader=new FileReader(file); while((b=reader.read(data,0,512))!=-1){ String s=new String(data,0,b); System.out.println(s); } reader.close(); } catch (IOException e) { e.printStackTrace(); } }}
结果为:
请输入测试内容:
大家好,这是我做的个人总结,希望可以供大家参考!
大家好,这是我做的个人总结,希望可以供大家参考!
C盘test.txt文件中的内容为:
大家好,这是我做的个人总结,希望可以供大家参考!
- java IO之文件输入输出流
- IO之文件输入输出流
- Java IO之输入输出流
- JAVA输入输出(IO)之文件
- Java IO 文件与文件流输入输出
- Java-IO框架-文件输入输出流
- java之io类,输入输出流学习
- JAVA输入输出(IO)之字节流
- JAVA输入输出(IO)之字符流
- JAVA输入输出(IO)之常用流
- Java基础之IO输入输出流
- java文件之输入输出流
- java 之文件输入输出流
- IO流之输入输出
- Java IO输入输出流
- java io 输入输出流
- Java IO(输入输出流)
- Java输入输出流IO
- r文件丢失
- Tomcat的新一代连接池jdbc-pool及实现分析
- WebRTC的优缺点
- redis几种启动方式
- 使用nuget管理c++库的原理
- java IO之文件输入输出流
- git ssh: connect to host gitub.com port 22解决办法
- Python及科学计算库的安装
- 网页跳转:重定向与转发
- 使用async 和 defer 属性异步加载执行JavaScript
- Apache下部署静态项目
- Eclipse导出doc文档以及编码 GBK 的不可映射字符
- 关于8位有符号位范围的问题
- 监听器(观察者模式)过滤器 拦截器