IO流复制文件
2018-06-04 16:48:28 0 举报
Java IO流复制文件?
作者其他创作
大纲/内容
修改后的while循环
向Writer对象中写入数据
package demo;import java.io.FileReader;import java.io.FileWriter;import java.io.Reader;import java.io.Writer;public class Demo {\tpublic static void main(String[] args)throws Exception {\t\t// 指定需要复制的文件\t\tReader r = new FileReader(\"C:\\\\Users\\\\Administrator\\\\Desktop\\\\Demo(2).java\");\t\t// 指定复制后的文件\t\tWriter w = new FileWriter(\"C:\\\\demo.java\");\t\t// 读取 ==》 写入\t\twhile(true){\t\t\tint n = r.read();\t\t\tif(n == -1){\t\t\t\tbreak;\t\t\t}else{\t\t\t\tw.write(n);\t\t\t}\t\t}\t\tw.flush();\t}}
两个关流需要分开try-catch否则一个出现异常后另一个正常的也无法关闭
使用字节版本的 文件输入流和文件输出流实现文件的内容复制
定义一个预读的缓存大小,每次读操作时读取这么多的字节数据将使用在read(这里面);当然read方法是跟在InputStream的方法对象后使用
false
1
开始
结束
新建一个FileInputStream(被读取的文件);
新建一个FileOutputStream(被写入的文件);
true
package 使用FileInputStream和FileOutputStream实现文件的复制;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;/** * * @author SeeClanUkyo * 使用文件输入流和文件输出流实现文件(内容)的复制 */public class SummaryFISAndFOS {\tpublic static void main(String[] args) {/** * 1.先将文件中的内容读入到输入流中 * 2.将输入流中的数据通过输出流写入到目标文件中 * 3.关闭输入流和输出流 */\t\tFileInputStream fis = null;\t\tFileOutputStream fos = null;\t\ttry {\t\t\tlong begin = System.currentTimeMillis();\t\t\t//从输入流中读取数据\t\t\tfis = new FileInputStream(\"FOS_DEMO.txt\");\t\t\t//向输出流中写入数据\t\t\tfos = new FileOutputStream(\"FISFOS_DEMO.txt\
读完就返回-1
使用字符版本的 文件输入流和文件输出流实现文件的内容复制
size=fis.read(buffer) != -1
从Reader类型对象读取数据
没读完就继续读
0 条评论
下一页