如何读取一个文件并将内容写入一个新文件中
2014-11-16 19:19
489 查看
PrintWriter只能读取字符,涉及到rar这些需要用字节来读取,详细看例子2
例子1
package io;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
public class Client {
public static void main(String[] args) {
BufferedReader reader=null;
PrintWriter writer=null;
File startfile=new File("c:/test.txt");//定义一个源文件的对象
File goalfile =new File("c:/copy.txt");//定义一个接收文件的对象
try {
FileReader f=new FileReader(startfile);//读取源文件
reader=new BufferedReader(f);
writer=new PrintWriter(new FileWriter(goalfile));//定义一个写入文件的对象写入目标文件goalfile也就是"c:/copy.txt"
while(reader.ready()){
writer.println(reader.readLine());//逐行读取源文件写入目标文件
}
writer.flush();//刷新
writer.close();//关闭
reader.close();//关闭
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("c:/test.txt文件不存在");
System.out.println(-1);
} catch (IOException e) {
e.printStackTrace();
}
}
}
例子2 使用byte[]和BufferInputStream\BufferOutputStream
package io;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class ByteReadWrite {
public static void main(String[] args) {
BufferedInputStream bis=null;
BufferedOutputStream bos=null;
File startfile=new File("E:/test.rar");//定义一个源文件的对象
File goalfile =new File("C:/copy.rar");//定义一个接收文件的对象
try {
FileInputStream fis=new FileInputStream(startfile);
bis=new BufferedInputStream(fis);
bos=new BufferedOutputStream(new FileOutputStream(goalfile));
byte[] bytes=new byte[1024];
while(fis.read(bytes)!=-1){
bos.write(bytes);
}
bos.flush();
bos.close();
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("E:/test.rar不存在");
System.out.println(-1);
} catch (IOException e) {
e.printStackTrace();
}
}
}
例子1
package io;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
public class Client {
public static void main(String[] args) {
BufferedReader reader=null;
PrintWriter writer=null;
File startfile=new File("c:/test.txt");//定义一个源文件的对象
File goalfile =new File("c:/copy.txt");//定义一个接收文件的对象
try {
FileReader f=new FileReader(startfile);//读取源文件
reader=new BufferedReader(f);
writer=new PrintWriter(new FileWriter(goalfile));//定义一个写入文件的对象写入目标文件goalfile也就是"c:/copy.txt"
while(reader.ready()){
writer.println(reader.readLine());//逐行读取源文件写入目标文件
}
writer.flush();//刷新
writer.close();//关闭
reader.close();//关闭
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("c:/test.txt文件不存在");
System.out.println(-1);
} catch (IOException e) {
e.printStackTrace();
}
}
}
例子2 使用byte[]和BufferInputStream\BufferOutputStream
package io;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class ByteReadWrite {
public static void main(String[] args) {
BufferedInputStream bis=null;
BufferedOutputStream bos=null;
File startfile=new File("E:/test.rar");//定义一个源文件的对象
File goalfile =new File("C:/copy.rar");//定义一个接收文件的对象
try {
FileInputStream fis=new FileInputStream(startfile);
bis=new BufferedInputStream(fis);
bos=new BufferedOutputStream(new FileOutputStream(goalfile));
byte[] bytes=new byte[1024];
while(fis.read(bytes)!=-1){
bos.write(bytes);
}
bos.flush();
bos.close();
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("E:/test.rar不存在");
System.out.println(-1);
} catch (IOException e) {
e.printStackTrace();
}
}
}
相关文章推荐
- java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容
- 如何用java读取一个txt 文件内的内容并把它赋值与String里?
- 如何读取一个本地Json文件并查询该文件展示其内容
- Shell脚本基础7-如何在一个文件尾部写入内容
- C# StreamWriter写入一个ini文件到本地,StreamReader读取保存在本地的ini文件内容
- 如何从内核模式设备驱动程序中打开一个文件以及如何读取或写入文件
- 【转帖】如何从内核模式设备驱动程序中打开一个文件以及如何读取或写入文件
- winform中 如何读取Excel文件,之后再把它写入一个新的Excel文件
- 第二周第四天(解析/过滤文件/找d盘里的所有txt文件/FileInputStream/FileOutputStream/拷贝文件/readLine读取一个文本行/在一个文档里写入内容)
- C# 如何创建一个xml文件?并写入指定内容?
- 从文件读取内容,删除一个数据,把删除后的数据重新写入到文件
- C# 如何创建一个xml文件?并写入指定内容?
- JAVA中如何向创建一个文件并且向其中写入内容
- 如何使用JavaExcel(jxl)读取一个文件并写入一个新文件
- 一个模式字符串,一个替换用字符串,以及两个文件名 它应该读取第一个文件, 并将内容写入第二个文件
- java 如何将两个txt文件内容写入到一个txt文件中?
- C语言逐行读取文件内容,写入另外一个文件
- 如何读取工程中的一个文件内容
- 如何从内核模式设备驱动程序中打开一个文件以及如何读取或写入文件(来自微软官网)
- 如何写一个能够读取文件并显示全部内容,计数行数的shell