java附件_Java中实现文件上传下载的三种解决方案(推荐)

java文件上传与文件下载是程序开发中比较常见的功能,下面通过本文给大家介绍Java中实现文件上传下载的三种解决方案,具体详情如下所示;

第一点:Java代码实现文件上传

FormFile file=manform.getFile();

String newfileName = null;

String newpathname=null;

String fileAddre="/numUp";

try {

InputStream stream = file.getInputStream();// 把文件读入

String filePath = request.getRealPath(fileAddre);//取系统当前路径

File file1 = new File(filePath);//添加了自动创建目录的功能

((File) file1).mkdir();

newfileName = System.currentTimeMillis()

+ file.getFileName().substring(

file.getFileName().lastIndexOf('.'));

ByteArrayOutputStream baos = new ByteArrayOutputStream();

OutputStream bos = new FileOutputStream(filePath + "/"

+ newfileName);

newpathname=filePath+"/"+newfileName;

System.out.println(newpathname);

// 建立一个上传文件的输出流

System.out.println(filePath+"/"+file.getFileName());

int bytesRead = 0;

byte[] buffer = new byte[8192];

while ((bytesRead = stream.read(buffer, 0, 8192)) != -1) {

bos.write(buffer, 0, bytesRead);// 将文件写入服务器

}

bos.close();

stream.close();

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

第二点:Jsp页面上实现文件上传

package com.vogoal.util;

import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.text.SimpleDateFormat;

import java.util.ArrayList;

import java.util.Date;

import java.util.Hashtable;

import javax.servlet.ServletInputStream;

import javax.servlet.http.HttpServletRequest;

public class JspFileUpload {

/** request对象 */

private HttpServletRequest request = null;

/** 上传文件的路径 */

private String uploadPath = null;

/** 每次读取得字节的大小 */

private static int BUFSIZE = 1024 * 8;

/** 存储参数的Hashtable */

private Hashtable paramHt = new Hasptable();

/** 存储上传的文件的文件名的ArrayList */

private ArrayList updFileArr = new ArrayList();

/**

* 设定request对象。

*

* @param request

* HttpServletRequest request对象

*/

public void setRequest(HttpServletRequest request) {

this.request = request;

}

/**

* 设定文件上传路径。

*

* @param path

* 用户指定的文件的上传路径。

*/

public void setUploadPath(String path) {

this.uploadPath = path;

}

/**

* 文件上传处理主程序。�������B

*

* @return int 操作结果 0 文件操作成功;1 request对象不存在。 2 没有设定文件保存路径或者文件保存路径不正确&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值