在Java
实现文上传的功能需要用到文件架包commons-io-2.4和commons-fileupload-1.2.2
网盘下载:https://pan.baidu.com/s/1s-sLfaBzYc2E6xDNZW5oOg
提取码:1257
文件上传步骤:
第一步需要保证你的from里的
<from action="位置" method="POST或则GET" enctype="multipart/form-data">
enctype里的值必须为multipart/form-data
然后就开始写文件上传的Java代码了
//判断 新增表单是否上传了文件
boolean isMulti=ServletFileUpload.isMultipartContent(request);
if(isMulti){
try{
//获取解析器
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
//解析请求对象
List<FileItem> items = upload.parseRequest(request);
for (FileItem item : items) {
//判断item代表哪个
if(item.isFormField()){
//普通域
//获取item的name属性
String fname =item.getFieldName();
if(fname.equals("tid")){
//item值获取 封装到n对象 ,封装到int类型里
int integer= Integer.parseInt( item.getString("utf-8") ));
}else if(fname.equals("title")){
//封装到String类型里,需要进行转换成UTF-8的格式
String name= item.getString("utf-8") ;
}
}else{
//文件域
//获取文件名
String fileName=item.getName();
//判断文件名是否为空
if(fileName!=null && !fileName.equals("")){
String filename=fileName;//封装文件名
//上传文件
String path= request.getSession().getServletContext().getRealPath("要存放的文件目录的位置/");
item.write(new File(path+"/"+fileName) ;//上传成提示
System.out.print("成功"));//上传
}
}
}
}catch (Exception e) {
// TODO: handle exception
}
这样就能实现文件上传了,这些代码是指用来做参考的,但是大体就是这样写的。