/**
* 仅限字符使用
* BufferedReader
* BufferedWriter
* readLint() 自动去找换行符,读一行
* newLine() 写一个换行符
* 使用try(Buff...){}
*/
package IOStudy;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
/**
* 仅限字符使用
* BufferedReader
* BufferedWriter
* readLint() 自动去找换行符,读一行
* newLine() 写一个换行符
* @author pmc
*
*/
public class RWTest {
public static void main(String[] args) {
WFile();
RFile();
copy("txt.txt","txts.txt");
}
/**
* 四个步骤:分段读取文件字符输入流,加入缓冲流
* 1.创建源
* 2.选择流
* 3.操作
* 4.释放资源
*/
private static void RFile(){
File src=new File("txt.txt");
BufferedReader reader=null;
try{
reader=new BufferedReader(new FileReader(src));
String line=null;
while((line=reader.readLine())!=null){
System.out.println(line);
}
}catch(IOException e){
e.printStackTrace();
}finally{
if(reader!=null){
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}finally{
if(reader!=null){
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
}
private static void WFile(){
File src=new File("txt.txt");
BufferedWriter writer=null;
try{
writer=new BufferedWriter(new FileWriter(src,true));
writer.newLine();
writer.append("javas");
writer.flush();
}catch(IOException e){
e.printStackTrace();
}finally{
if(writer!=null){
try {
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
//拷贝文本
private static void copy(String srcPath,String destPath){
File src=new File(srcPath);
File dest=new File(destPath);
try(BufferedReader r=new BufferedReader(new FileReader(src));
BufferedWriter w=new BufferedWriter(new FileWriter(dest))){
String temp=null;
while((temp=r.readLine())!=null){
w.append(temp);
w.newLine();
}
w.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
}
本文深入讲解Java中的IO流操作,包括BufferedReader和BufferedWriter的使用方法,如何读写文件,以及通过示例代码演示了文件复制的过程。适用于Java初学者和需要复习IO流概念的开发者。

1570

被折叠的 条评论
为什么被折叠?



