各种读取文件类
来源:互联网 发布:手机淘宝改评价怎么看 编辑:程序博客网 时间:2024/05/22 05:12
FileOutputStream FileInputStream FileWriter FileReader
是输入输出流对文件的接口,stream是对字节(byte[])的操作,writer是对字符(string)的操作。
OutputStreamWriter InputStreamReader
构造函数参数为OutputStream和InputStream,也就是说用于把字节转为字符(byte[] to String)
DataOutputStream dout= new DataOutputStream(new FileOutputStream(file));
dout.writeInt(1);
OutputStreamWriter osw = new OutputStreamWriter(dout);
PrintWriter pw= new PrintWriter(osw);
PrintWriter 和 BufferedWriter
PrintWriter和BufferedWriter都是继承java.io.Writer,所以很多功能都一样。不过PrintWriter提供println()方法可以写不同平台的换行符,而BufferedWriter可以任意设定缓冲大小。
PrintWriter有含有OutputStream、File、Writer的构造方法。BufferedWriter只接受writer。
默认是清空文件
PrintWriter pwriter = new PrintWriter(new File("f:/test.txt"););
BufferedWriter bwriter = new BufferedWriter(pwriter);
如果需要不清空文件
PrintWriter pwriter = new PrintWriter(new FileWriter(new File("f:/test.txt"),true));
BufferedWriter bwriter = new BufferedWriter(new FileWriter(new File("f:/test.txt"),true));
PrintWriter提供方法为各个平台换行,println()
BufferedWriter的换行则为newLine()
基本上这两个类都差不多,用哪个都可以,PrintWriter稍好
ByteArrayOutputStream
将各种对象写入内存缓冲区,然后写入文件,
ByteArrayOutputStream array = new ByteArrayOutputStream();
int a = 1;
array.write(a);
byte[] bts = array.toByteArray();
array.writeTo(new FileOutputStream(bfile, true));//通过outputstream写入文件
DataOutputStream
可以写各种基本类型,可以用它来封一层ByteArrayOutputStream来写各种基本类型,也可以直接向各种outputstream中写,例如文件
ByteArrayOutputStream array = new ByteArrayOutputStream();
DataOutputStream out = new DataOutputStream(array);//向array中输出
out.writeBytes("sasdfsafsdf");
out.writeChar('A');
out.writeInt(123);
DataOutputStream to = new DataOutputStream(new FileOutputStream(bfile, true));//向文件中输出
array.writeTo(to);
//直接向文件中写
DataOutputStream ssss = new DataOutputStream(new FileOutputStream(bfile));
ssss.writeInt(1);
ObjectOutputStream
写入对象
Reader与Writer差不多
主要用FileInputStream,BufferedReader, BufferedInputStream, GZIPInputStream
BufferedReader reader = new BufferedReader(freader);
String line = null;
while ((line = reader.readLine()) != null)
{
System.out.println(line);
}
reader.close();
//直接读进byte[]
byte[] data = new byte[(int)bfile.length()];
fis.read(data);
fis.close();
//从二进制文件读出,然后转成reader。
FileInputStream fileInputStream = new FileInputStream(bfile);
//GZIPInputStream gzipInputStream = new GZIPInputStream(fileInputStream);
//InputStreamReader inputStreamReader = new InputStreamReader(gzipInputStream);
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
BufferedReader bfreader = new BufferedReader(inputStreamReader);
读写
BufferedReader reader = new BufferedReader(new FileReader(file));
PrintWriter pw = new PrintWriter(new File("f:/writerTest.txt"));
String line = null;
while ((line = reader.readLine()) != null)
{
System.out.println(line);
pw.println(line);
}
reader.close();
pw.close();
//字节读写
BufferedInputStream in = new BufferedInputStream(new FileInputStream(bfile));
ByteArrayOutputStream array = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(new FileOutputStream("f:/bwriterTest.txt"));
byte[] buffer = new byte[4096];
int numBytesRead;
while ((numBytesRead = in.read(buffer, 0, 4096)) != -1)
{
array.write(buffer, 0 ,numBytesRead);
//dos.write(buffer, 0 ,numBytesRead);
}
array.writeTo(dos);
dos.close();
in.close();
array.close();
- 各种读取文件类
- 各种文件读取方法
- 文件各种读取方式
- android读取各种资源文件
- matlab 读取文件各种方法
- ios 读取各种类型文件
- matlab 读取文件各种方法
- matlab 读取文件各种方法
- 【Matlab】 读取文件各种方法
- 【Matlab】 读取文件各种方法
- 【Matlab】 读取文件各种方法
- Java工具类——各种方式读取文件
- Java工具类——各种方式读取文件
- java 读取 properties文件的各种方法
- java各种读取文件的方法
- vc 各种读取txt文件的方法
- 读取.config文件的各种方式
- java各种读取properties文件方法
- Java魔法堂:深入正则表达式API
- Python随手笔记(1)和使用库的一些提示
- JAVA 复习(Think In Java, 4th)-- Holding Your Object
- Program work 6. 每个节点只含一个链接点的双向链表实现
- freeRTOS配置
- 各种读取文件类
- 富士达反倒是公司大概是的公司大概
- C# 对XML文件的读取与修改
- vector增删数据容器大小变化
- Bubble sort
- AS3中正则表达式中如何表达“或”
- php语言标记及语言分隔符“分号”
- 鸡飞狗叫好地方固定服务儿童公司地方是的
- HDU 1010 Tempter of the Bone(深搜)