日期:2014-05-17  浏览次数:20754 次

File类的小问题,求指教。。。。。。。。。。。
这是采用struts2实现文件上传的部分代码,new File(realpath)能够新建一个目录吗,不然的话,划线部分什么意思
public String execute() throws Exception{ //执行execute方法
String realpath = ServletActionContext.getServletContext().getRealPath("/images");//获取文件 夹/imgages的绝对地址
System.out.println(realpath);//打印这个地址
if(image!=null) {
File filedir = new File(realpath);//新建filedir文件目录若目录不存在,就新建一个
if(!filedir.exists()) {
filedir.mkdirs();
}
for(int i=0;i<image.length;i++) {//循环遍历将文件数组image[]中的元素,逐一复制给savefile实现文件的上传功能
File savefile = new File(filedir,imageFileName[i]);
FileUtils.copyFile(image[i], savefile);
}

ActionContext.getContext().put("message", "保存成功!");//提醒文件上传成功
}

return "success";
}

------解决方案--------------------
new File(realpath) 这行语句自身不能新建目录,只是初始化了一个文件对象类(是否能访问还是未知的)。

但是:
if(!filedir.exists()) {
filedir.mkdirs();
}
这两句话一配合就可以新建目录了。
------解决方案--------------------
探讨

new File(realpath) 这行语句自身不能新建目录,只是初始化了一个文件对象类(是否能访问还是未知的)。

但是:
if(!filedir.exists()) {
filedir.mkdirs();
}
这两句话一配合就可以新建目录了。