黑马程序员技术交流社区
标题:
怎么读取失败了?File类不能直接读取文件夹吗?
[打印本页]
作者:
阿彪
时间:
2013-4-26 21:08
标题:
怎么读取失败了?File类不能直接读取文件夹吗?
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
class FileDemo
{
public static void main(String[] args)throws IOException
{
/*
D:\name 复制到e:\\OK
*/
//封装指定目录
File file = new File("D:\\name==============");
//file.setExecutable(true);
//目击地:
File aim = new File("e:\\OK");
if(!aim.exists()){
aim.mkdir();
}
//获取所有文件对象
File[] list = file.listFiles();
//遍历
for(File f : list){
//判断是否为文件夹
if(f.isDirectory()){
//获取到当前文件名字。
//把当前目录和目击地包装起来 , 进行传递复制
File newFile = new File(aim,f.getName());
//传递包装的路径 ,和f 获取文件夹
System.out.println(newFile);
copyFile(f,newFile);
}
}
}
//复制
public static void copyFile(File f,File newFile)throws IOException{
//数据源---读
FileInputStream fis = new FileInputStream(f);
//目击的--写
FileOutputStream fos = new FileOutputStream(newFile);
//读取数据
byte[] by = new byte[1024];
int len = 0;
while((len = fis.read(by))!=-1){
//写入数据
fos.write(len);
fos.flush();
}
//释放资源
fos.close();
fis.close();
}
}结果:
e:\OK\新建文件夹
Exception in thread "main" java.io.FileNotFoundException: D:\name==============\新建文件夹 (拒绝访问
。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at FileDemo.copyFile(FileDemo.java:39)
at FileDemo.main(FileDemo.java:32)
作者:
刘沛霞
时间:
2013-5-2 09:13
你这个异常是没有找到文件,你得先创建相应的文件目录。创建目录用 mkdir() 方法。创建文件时用createNewFile() 。
作者:
曹睿翔
时间:
2013-5-4 06:56
如果仍有问题,请继续追问,如果问题已解决,请将分类改为已解决,谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2