重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
右键“我的电脑”,“属性”,“高级”,“环境变量”,在“环境变量”“新建”变量名 classpath
创新互联凭借专业的设计团队扎实的技术支持、优质高效的服务意识和丰厚的资源优势,提供专业的网站策划、做网站、成都网站制作、网站优化、软件开发、网站改版等服务,在成都10余年的网站建设设计经验,为成都上千余家中小型企业策划设计了网站。
变量值:.;C:\Program Files\Java\jdk1.6.0_07\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_07\lib\tools.jar这是安装路径来的,根据自己的安装路径来定吧。再“新建”变量名:JAVA_HOME 变量值C:\Program Files\Java\jdk1.6.0_07
选择“path”,“编辑”,在变量值的最后面添加C:\Program Files\Java\jdk1.6.0_07\bin,注意两个路径之间要加分号
改为:File dateFile2 = new File(basePath + datePath + "/" + model);的时候不好使应该是你的返回值没有加 文件分隔符的原因。
你最后成功是因为你加了 datePath+="/";
让返回和新建文件路径都一致了。
另外不要用“/” 最好使用:File.separator;
还有renameTo只能在windows下使用,limux不行,而且即使是在windonws下,如果file systems不一样也会失败的,建议copy文件自己重写或者使用common-io的工具类。
打开eclipse,在你要查找的项目单击鼠标右键,选中属性选项,就会有一个窗口弹出来,里面有一个相对路径和绝对路劲,这个绝对路径就是你文件的存放位置
文件从本地到服务器的功能,其实是为了解决目前浏览器不支持获取本地文件全路径。不得已而想到上传到服务器的固定目录,从而方便项目获取文件,进而使程序支持EXCEL批量导入数据。
java中文件上传到服务器的指定路径的代码:
在前台界面中输入:
form method="post" enctype="multipart/form-data" action="../manage/excelImport.do"
请选文件:input type="file" name="excelFile"
input type="submit" value="导入" onclick="return impExcel();"/
/form
action中获取前台传来数据并保存
/**
* excel 导入文件
* @return
* @throws IOException
*/
@RequestMapping("/usermanager/excelImport.do")
public String excelImport(
String filePath,
MultipartFile excelFile,HttpServletRequest request) throws IOException{
log.info("action:{} Method:{} start","usermanager","excelImport" );
if (excelFile != null){
String filename=excelFile.getOriginalFilename();
String a=request.getRealPath("u/cms/www/201509");
SaveFileFromInputStream(excelFile.getInputStream(),request.getRealPath("u/cms/www/201509"),filename);//保存到服务器的路径
}
log.info("action:{} Method:{} end","usermanager","excelImport" );
return "";
}
/**
* 将MultipartFile转化为file并保存到服务器上的某地
*/
public void SaveFileFromInputStream(InputStream stream,String path,String savefile) throws IOException
{
FileOutputStream fs=new FileOutputStream( path + "/"+ savefile);
System.out.println("------------"+path + "/"+ savefile);
byte[] buffer =new byte[1024*1024];
int bytesum = 0;
int byteread = 0;
while ((byteread=stream.read(buffer))!=-1)
{
bytesum+=byteread;
fs.write(buffer,0,byteread);
fs.flush();
}
fs.close();
stream.close();
}