java 使用带有缓冲的字符流读写数据
来源:互联网 发布:逻辑回归算法详解 编辑:程序博客网 时间:2024/05/12 05:42
案例
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
public class RWByBufferCharStream {
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
public class RWByBufferCharStream {
public static void main(String[] args) {
/*
* 数据的读 出
*/
//File file = new File("1.txt");
try {
//传入一个文件字符流输入流
FileInputStream fileInputStream = new FileInputStream("1.txt");
//将字符流转化为字节流
FileOutputStream fileOutputStream = new FileOutputStream("i_newbuffer.txt");
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream,"UTF-8");
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream, "UTF-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
//BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
PrintWriter printWriter = new PrintWriter( outputStreamWriter,true);//使用这个类会有换行符出现
String input;
while((input=bufferedReader.readLine())!=null)//读取文件的一行数据
{
//bufferedWriter.write(input);// BufferedWriter bufferedWriter自带有缓冲区 只有当缓冲区写满后才写入硬盘这样 可以提高硬盘使用量,硬盘的寿命 整体写出时间变短
printWriter.println(input);//输出有换行符的字符串
}
//读取一段缓存流后需要 写入到文件中
//为了 保证缓冲区所有文件都输出 需要强制输出 printWriter.flush();
printWriter.flush();
printWriter.close();
bufferedReader.close();
outputStreamWriter.close();
inputStreamReader.close();
fileOutputStream.close();
fileInputStream.close();
System.out.println("文件拷贝完成");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/*
* 数据的读 出
*/
//File file = new File("1.txt");
try {
//传入一个文件字符流输入流
FileInputStream fileInputStream = new FileInputStream("1.txt");
//将字符流转化为字节流
FileOutputStream fileOutputStream = new FileOutputStream("i_newbuffer.txt");
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream,"UTF-8");
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream, "UTF-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
//BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
PrintWriter printWriter = new PrintWriter( outputStreamWriter,true);//使用这个类会有换行符出现
String input;
while((input=bufferedReader.readLine())!=null)//读取文件的一行数据
{
//bufferedWriter.write(input);// BufferedWriter bufferedWriter自带有缓冲区 只有当缓冲区写满后才写入硬盘这样 可以提高硬盘使用量,硬盘的寿命 整体写出时间变短
printWriter.println(input);//输出有换行符的字符串
}
//读取一段缓存流后需要 写入到文件中
//为了 保证缓冲区所有文件都输出 需要强制输出 printWriter.flush();
printWriter.flush();
printWriter.close();
bufferedReader.close();
outputStreamWriter.close();
inputStreamReader.close();
fileOutputStream.close();
fileInputStream.close();
System.out.println("文件拷贝完成");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
结果 如下:
文件拷贝完成
阅读全文
0 0
- java 使用带有缓冲的字符流读写数据
- 使用带有缓冲的字符流读写数据
- java-IO操作——使用带有缓冲的字符流读写数据
- java20.IO操作------使用带有缓冲的字符流读写数据
- 使用带有缓冲的字节流读写数据
- JAVA IO :使用带缓冲的字节流读写数据
- java 字符流与带有缓冲的字符流 代码笔记
- JAVA IO:使用字符流读写数据
- java 使用字符流读写数据
- 使用字符流读写数据
- 【Java】javaIO之带缓冲流的字符流文件读写
- java-IO操作-使用字符流读写数据
- java 缓冲字符流
- 使用缓冲字节流:BufferedInputStream与BufferedOutputStream读写数据
- java18.IO操作------使用带缓冲的字节流读写数据
- IO学习之使用带缓冲的字符流(Buffered)读取数据
- 简单实现带有数据缓冲池的生产者消费者模型
- 关于流的缓冲读写
- 工厂模式-三姐妹
- 手把手制作一个vcpkg的安装包及port file相关说明
- 本地网络环境映射到公网方法
- 5月28日,每日20行。
- 1019. 数字黑洞 (20)
- java 使用带有缓冲的字符流读写数据
- 数位dp--HDU2062
- python及库在linux下的目录
- 加载插件(二)之静态加载
- CSUOJ 1939 World's end BFS 仔细思考
- 1064. 朋友数(20)
- Windows server 2008
- BZOJ1878(SDOI2009)[HH的项链]题解--莫队
- python3连接mysql