永发信息网

怎么用java程序实现上传文件到指定的URL地址

答案:2  悬赏:50  手机版
解决时间 2021-02-23 09:33
  • 提问者网友:雨不眠的下
  • 2021-02-23 04:44
怎么用java程序实现上传文件到指定的URL地址
最佳答案
  • 五星知识达人网友:舊物识亽
  • 2021-02-23 05:43
//保存图片
private void saveImg(HttpServletRequest request,FormFile imgFile,FileForm fileForm){
if (imgFile != null && imgFile.getFileSize() > 0) {
    String fileName = imgFile.getFileName();
    String sqlPath = "img/" + fileName;
    //图片所在路径
    String savePath = request.getSession().getServletContext().getRealPath("/")+ "img\\" + fileName;
    System.out.println(fileName);
    System.out.println(sqlPath);
    System.out.println(savePath);
    HttpSession session=request.getSession();
    session.setAttribute("savePath", savePath);
    session.setMaxInactiveInterval(60*60);
    //String savePath1=(String)session.getAttribute("savePath");
    // 数据库
    fileForm.getFile().setFileEmpPhoto(sqlPath);
    // 文件
    try {
        InputStream input = imgFile.getInputStream();
        FileOutputStream output = new FileOutputStream(savePath);
        byte[] b = new byte[1024];
        while (input.read(b) != -1) {
            output.write(b);
            b = new byte[1024];
        }
        output.close();
        input.close();
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
}
全部回答
  • 1楼网友:风格不统一
  • 2021-02-23 06:27
代码如下: import java.io.*; public class copydirectory { // 源文件夹 static string url1 = "f:/photos"; // 目标文件夹 static string url2 = "d:/tempphotos"; public static void main(string args[]) throws ioexception { // 创建目标文件夹 (new file(url2)).mkdirs(); // 获取源文件夹当前下的文件或目录 file[] file = (new file(url1)).listfiles(); for (int i = 0; i < file.length; i++) { if (file[i].isfile()) { // 复制文件 copyfile(file[i],new file(url2+file[i].getname())); } if (file[i].isdirectory()) { // 复制目录 string sourcedir=url1+file.separator+file[i].getname(); string targetdir=url2+file.separator+file[i].getname(); copydirectiory(sourcedir, targetdir); } } } // 复制文件 public static void copyfile(file sourcefile,file targetfile) throws ioexception{ // 新建文件输入流并对它进行缓冲 fileinputstream input = new fileinputstream(sourcefile); bufferedinputstream inbuff=new bufferedinputstream(input); // 新建文件输出流并对它进行缓冲 fileoutputstream output = new fileoutputstream(targetfile); bufferedoutputstream outbuff=new bufferedoutputstream(output); // 缓冲数组 byte[] b = new byte[1024 * 5]; int len; while ((len =inbuff.read(b)) != -1) { outbuff.write(b, 0, len); } // 刷新此缓冲的输出流 outbuff.flush(); //关闭流 inbuff.close(); outbuff.close(); output.close(); input.close(); } // 复制文件夹 public static void copydirectiory(string sourcedir, string targetdir) throws ioexception { // 新建目标目录 (new file(targetdir)).mkdirs(); // 获取源文件夹当前下的文件或目录 file[] file = (new file(sourcedir)).listfiles(); for (int i = 0; i < file.length; i++) { if (file[i].isfile()) { // 源文件 file sourcefile=file[i]; // 目标文件 file targetfile=new file(new file(targetdir).getabsolutepath() +file.separator+file[i].getname()); copyfile(sourcefile,targetfile); } if (file[i].isdirectory()) { // 准备复制的源文件夹 string dir1=sourcedir + "/" + file[i].getname(); // 准备复制的目标文件夹 string dir2=targetdir + "/"+ file[i].getname(); copydirectiory(dir1, dir2); } } } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯