『壹』 java上传图片到服务器指定路径
privateFilemyFile;//文件;//类型privateStringmyFileFileName;//文件名//。。。。getXXX()setXXX()方法//输入流InputStreamis=newFileInputStream(myFile);//设定文件路径StringphotoPath=ServletActionContext.getServletContext().getRealPath("/user/photo/");FilefilePhotoPath=newFile(photoPath);//判断这个路径是否存在,如果不存在创建这个路径if(!filePhotoPath.isDirectory()){filePhotoPath.mkdir();}Stringextension=FilenameUtils.getExtension(this.getMyFileFileName());//后缀名比如jpgStringfilename=UUID.randomUUID().toString()+"."+extension;//目标文件Filetofile=newFile(photoPath,filename);//输出流OutputStreamos=newFileOutputStream(tofile);byte[]buffer=newbyte[1024];intlength=0;while((length=is.read(buffer))>0){os.write(buffer,0,length);}//关闭输入流is.close();//关闭输出流os.close();
『贰』 java中文件上传 new File(文件路径)问题
通过 ”new FileInputStream(文件路径)“的形式进行上传即可。举例: /** * 加密文件 * * @param fileName * @param date * @param plainFilePath 明文文件路径路径 * @param filepath * @return * @throws Exception */ public static String encodeAESFileUploadByFtp(String plainFilePath, String fileName, String date,String filepath) throws Exception { FileInputStream fis = null; ByteArrayOutputStream bos = null; FTPClient ftpClient = new FTPClient(); String bl = "false"; try { fis = new FileInputStream(plainFilePath); bos = new ByteArrayOutputStream(fis.available()); byte[] buffer = new byte[1024]; int count = 0; while ((count = fis.read(buffer)) != -1) { bos.write(buffer, 0, count); } bos.flush(); Log.info("加密上传文件开始"); byte[] bytes = encodeAES(key, bos.toByteArray()); ByteArrayInputStream is = new ByteArrayInputStream(bytes); Log.info("连接远程上传服务器"+CMBCUtil.CMBCHOSTNAME+":"+2021); ftpClient.connect(CMBCUtil.CMBCHOSTNAME, 2021); ftpClient.login(CMBCUtil.CMBCLOGINNAME, CMBCUtil.CMBCLOGINPASSWORD);// Log.info("连接远程上传服务器"+"192.168.54.106:"+2021);// ftpClient.connect("192.168.54.106", 2021);// ftpClient.login("hkrt-CMBCHK", "3OLJheziiKnkVcu7Sigz"); FTPFile[] fs; fs = ftpClient.listFiles(); for (FTPFile ff : fs) { if (ff.getName().equals(filepath)) { bl="true"; ftpClient.changeWorkingDirectory("/"+filepath+""); ftpClient.makeDirectory(date); ftpClient.changeWorkingDirectory("/"+filepath+"/" + date); } } Log.info("检查文件路径是否存在:/"+filepath); if("false".equals(bl)){ ViewUtil.dataSEErrorPerformedCommon( "查询文件路径不存在:"+"/"+filepath); return bl; } ftpClient.setBufferSize(1024); ftpClient.setControlEncoding("GBK"); // 设置文件类型(二进制) ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE); ftpClient.storeFile(fileName, is); Log.info("加密上传文件成功:"+fileName+"。文件保存路径:"+"/"+filepath+"/" + date); return bl; } catch (Exception e) { throw e; } finally { if (fis != null) { try { fis.close(); } catch (Exception e) { Log.info(e.getLocalizedMessage(), e); } } if (bos != null) { try { bos.close(); } catch (Exception e) { Log.info(e.getLocalizedMessage(), e); } } } }
『叁』 java中怎么把文件上传到服务器的指定路径
文件从本地到服务器的功能,其实是为了解决目前浏览器不支持获取本地文件全路径。不得已而想到上传到服务器的固定目录,从而方便项目获取文件,进而使程序支持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();
}
『肆』 在java程序中上传的文件保存在哪里
这个问题问的比较诡异我能告诉你的是上传和下载的路径都是你自己定义的文件上传的道理就是读流然后把文件保存到你指定的路径下面去一般这样做数据库设计个字段是你保存的路径肯定是你服务器中某个文件夹中下载就是读路径加些固定的下载代码.
『伍』 java web 用uploadfile上传文件 怎么设置保存文件的绝对路径
-i Install service (安装服务) -u Uninstall service (卸载来服务) -d Debug: run as console program (以debug模式运行源) -h host Name of log host (日志服务器IP地址) -p port Port number of syslogd (日志服务器端口,默认是514) -q char Quote messages with character打开Windows命令提示符(开始->运行 输入CMD)C:\>evtsys –i –h 192.168.28.4 #(日志服务器的IP地址)-i 表示安装成系统服务-h 指定log服务器的IP地址
『陆』 java做上传文件,提示找不到系统路径,java.io.FileNotFoundException
你这报错不是路径不对,而是文件找不到,你要保证可以上传.gz格式的文件,而且要确定可以上传此类文件,大小是否会超出指定的范围
『柒』 后台java知道一个绝对路径 怎么上传文件
现在因为浏览器安全问题,已经禁止了直接通过input类型为file的路径形式了,现在可以通过流的形式来实现,只需要定义下上传文件类型为“enctype="multipart/form-data”即可: 举例:
『捌』 java怎么获取上传文件的路径
java文件中获得路径Thread.currentThread().getContextClassLoader().getResource("") //获得资源文件(.class文件)所在路径ClassLoader.getSystemResource("")Class_Name.class.getClassLoader().getResource("")Class_Name.class .getResource("/") Class_Name.class .getResource("") // 获得当前类所在路径System.getProperty("user.dir") // 获得项目根目录的绝对路径System.getProperty("java.class.path") //得到类路径和包路径打印输出依次如下:file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/com/xml/imp/F:\work_litao\uri_testF:\work_litao\uri_test\WebContent\WEB-INF\classes;F:\work_litao\uri_test\WebContent\WEB-INF\lib\dom4j.jar2、 JSP中获得当前应用的相对路径和绝对路径根目录所对应的绝对路径:request.getRequestURI()文件的绝对路径 :application.getRealPath(request.getRequestURI());当前web应用的绝对路径 :application.getRealPath("/");取得请求文件的上层目录:new File(application.getRealPath(request.getRequestURI())).getParent()
『玖』 java文件上传文件路径
String newFilePath = "new Path" + "\\" + newfile.getFileName;File file = new File(String newFilePath);
『拾』 java中怎么把文件上传到服务器的指定路径
String realpath = ServletActionContext.getServletContext().getRealPath("/upload") ;//获取服务器路径 String[] targetFileName = uploadFileName; for (int i = 0; i < upload.length; i++) { File target = new File(realpath, targetFileName[i]); FileUtils.File(upload[i], target); //这是一个文件复制类File()里面就是IO操作,如果你不用这个类也可以自己写一个IO复制文件的类 } 其中private File[] upload;// 实际上传文件 private String[] uploadContentType; // 文件的内容类型 private String[] uploadFileName; // 上传文件名这三个参数必须这样命名,因为文件上传控件默认是封装了这3个参数的,且在action里面他们应有get,set方法
未经允许不得转载:山九号 » java上传文件路径|java中怎么把文件上传到服务器的指定路径