黑马程序员技术交流社区
标题:
这个数据流怎么复制到指定盘下的文件中啊
[打印本页]
作者:
没劲睡觉
时间:
2014-10-15 16:41
标题:
这个数据流怎么复制到指定盘下的文件中啊
package com.util;
import java.io.*;
/*
* 将c盘一个文本文件复制到D盘
* 复制的原理:
* 其实就是将C盘下的文件数据存储到D盘的一个文件中
*
*步骤:
*1、在D盘创建一个文件,用于存储C盘文件中的数据
*2、定义读取流和C盘文件关联
*3、通过不断的读写完成数据存储
*4、关闭资源
*/
public class CopyText {
public static void main(String args[])
{
copy_2();
}
public static void copy_2()
{
FileWriter fw = null;
FileReader fr = null;
try {
fw = new FileWriter("demo_copy2.txt");
fr = new FileReader("demo.txt");
char buf[] = new char[100];
int len = 0;
while((len=fr.read(buf))!=-1)
{
fw.write(buf,0,len);
}
} catch (IOException e) {
throw new RuntimeException("读写失败!");
}
finally
{
if(fw!=null)
try {
fw.close();
} catch (IOException e) {
}
if(fr!=null)
try {
fr.close();
} catch (IOException e) {
}
}
}
}
比如demo.txt文件在D盘下 把里面的数据写入到E盘的demo_copy2.txt中啊》》》》》
一加E:\\就报异常了
复制代码
作者:
刘树弘
时间:
2014-10-15 16:41
本帖最后由 刘树弘 于 2014-10-15 22:49 编辑
在我的电脑上,你提供的代码是按预期运行的,所以我认为是你的执行环境有问题,请确
保"E:\\demo.txt"表示的文件是可读取的(存在且不能是文件夹,java程序有读权限等等)
"E:\\demo_copy2.txt"表示的文件是可写的(不能是文件夹,java程序有写权限等等)
强烈建议换两个文件在试试,比如"f:\\1.txt" "f:\\2.txt"另外可以参考:
http://bbs.itheima.com/thread-147644-1-1.html
作者:
没劲睡觉
时间:
2014-10-16 11:24
刘树弘 发表于 2014-10-15 16:41
在我的电脑上,你提供的代码是按预期运行的,所以我认为是你的执行环境有问题,请确
保"E:\\demo.txt"表示 ...
哦 我头脑发热了
作者:
axing110
时间:
2014-10-19 19:41
我电脑上运行可以啊我测试了可以滴哥们,我就是把您的文件加了一个d盘其他的没改完全可以的
作者:
勇闯黑马
时间:
2014-10-23 07:19
菜鸟路过围观
作者:
勇闯黑马
时间:
2014-10-23 07:51
顶顶顶!!!
作者:
武汉小菜鸟
时间:
2014-12-18 11:46
public FileWriter(String fileName)
throws IOException
- 如果指定文件存在,但它是一个目录,而不是一个常规文件;或者该文件不存在,但无法创建它;抑或因为其他某些原因而无法打开它。都会报异常。 我在前面加上D盘符(我的.class在D盘),没有报异常,加上C 盘后报异常,所以可能是某些原因而无法打开它。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2