当前位置:首页 » 文件管理 » 文件上传案例

文件上传案例

发布时间: 2023-01-29 02:18:39

① Vue+element_ui上传文件,并传递额外参数(自动上传)使用实例

 <el-upload    action="http://localhost:57937/api/Attchment/UploadAttachment"

    :on-success="handleAvatarSuccess"  list-type="picture-card"

   :http-request="Change" :on-preview="handlePictureCardPreview"

   :on-remove="handleRemove">

  <i class="el-icon-plus"></i>

   </el-upload>

//图片上传带参数

Change (param, type) {

                console.log(param, type);

                let formData = new FormData() 

                formData.append('files', param.file)

                 formData.append("path", 'repair')// 额外参数

         this.$http.post('/Attchment/UploadAttachment', formData).then(res => {

                 console.log(res);

                }); 

            },

API接收.net:

string typepath = HttpContext.Current.Request["path"]; 

② 图片上传案例,图片上传不到文件夹,怎么修改

在360软件管家里有个 “格式工厂” 把它下载下来,可以转换任何格式

③ 请高手给一个JS多文件上传的例子(必须兼容IE)解决追加50分。请看补充。

一、Servlet实现文件上传,需要添加第三方提供的jar包
下载地址:
1) commons-fileupload-1.2.2-bin.zip: 点击打开链接

2) commons-io-2.3-bin.zip: 点击打开链接
接着把这两个jar包放到 lib文件夹下:

二:文件上传的表单提交方式必须是POST方式,
编码类型:enctype="multipart/form-data",默认是 application/x-www-form-urlencoded
比如:
<form action="FileUpLoad"enctype="multipart/form-data"method="post">

三、举例:
1.fileupload.jsp
<%@ page language="java" import="javautil*" pageEncoding="UTF-8"%>
<%
String path = requestgetContextPath();
String basePath = requestgetScheme()+"://"+requestgetServerName()+":"+requestgetServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'fileuploadjsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="stylescss">
-->

</head>

<body>
<!-- enctype 默认是 application/x-www-form-urlencoded -->
<form action="FileUpLoad" enctype="multipart/form-data" method="post" >

用户名:<input type="text" name="usename"> <br/>
上传文件:<input type="file" name="file1"><br/>
上传文件: <input type="file" name="file2"><br/>
<input type="submit" value="提交"/>
</form>
</body>
</html>

2.实际处理文件上传的 FileUpLoad.java
package comservletfileupload;
import javaioFile;
import javaio*;
import javaioIOException;
import javaioPrintWriter;
import javautilList;
import javaxservletServletException;
import javaxservlethttpHttpServlet;
import ;
import ;
import ;
import ;
import ;
import ;

/**
*
* @author Administrator
* 文件上传
* 具体步骤:
* 1)获得磁盘文件条目工厂 DiskFileItemFactory 要导包
* 2) 利用 request 获取 真实路径 ,供临时文件存储,和 最终文件存储 ,这两个存储位置可不同,也可相同
* 3)对 DiskFileItemFactory 对象设置一些 属性
* 4)高水平的API文件上传处理 ServletFileUpload upload = new ServletFileUpload(factory);
* 目的是调用 parseRequest(request)方法 获得 FileItem 集合list ,
*
* 5)在 FileItem 对象中 获取信息, 遍历, 判断 表单提交过来的信息 是否是 普通文本信息 另做处理
* 6)
* 第一种 用第三方 提供的 itemwrite( new File(path,filename) ); 直接写到磁盘上
* 第二种 手动处理
*
*/
public class FileUpLoad extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

requestsetCharacterEncoding("utf-8"); //设置编码

//获得磁盘文件条目工厂
DiskFileItemFactory factory = new DiskFileItemFactory();
//获取文件需要上传到的路径
String path = requestgetRealPath("/upload");

//如果没以下两行设置的话,上传大的 文件 会占用 很多内存,
//设置暂时存放的 存储室 , 这个存储室,可以和 最终存储文件 的目录不同
/**
* 原理 它是先存到 暂时存储室,然后在真正写到 对应目录的硬盘上,
* 按理来说 当上传一个文件时,其实是上传了两份,第一个是以 tem 格式的
* 然后再将其真正写到 对应目录的硬盘上
*/
factorysetRepository(new File(path));
//设置 缓存的大小,当上传文件的容量超过该缓存时,直接放到 暂时存储室
factorysetSizeThreshold(1024*1024) ;

//高水平的API文件上传处理
ServletFileUpload upload = new ServletFileUpload(factory);

try {
//可以上传多个文件
List<FileItem> list = (List<FileItem>)uploadparseRequest(request);

for(FileItem item : list)
{
//获取表单的属性名字
String name = itemgetFieldName();

//如果获取的 表单信息是普通的 文本 信息
if(itemisFormField())
{
//获取用户具体输入的字符串 ,名字起得挺好,因为表单提交过来的是 字符串类型的
String value = itemgetString() ;

requestsetAttribute(name, value);
}
//对传入的非 简单的字符串进行处理 ,比如说二进制的 图片,电影这些
else
{
/**
* 以下三步,主要获取 上传文件的名字
*/
//获取路径名
String value = itemgetName() ;
//索引到最后一个反斜杠
int start = valuelastIndexOf("\\");
//截取 上传文件的 字符串名字,加1是 去掉反斜杠,
String filename = valuesubstring(start+1);

requestsetAttribute(name, filename);

//真正写到磁盘上
//它抛出的异常 用exception 捕捉

//itemwrite( new File(path,filename) );//第三方提供的

//手动写的
OutputStream out = new FileOutputStream(new File(path,filename));

InputStream in = itemgetInputStream() ;

int length = 0 ;
byte [] buf = new byte[1024] ;

Systemoutprintln("获取上传文件的总共的容量:"+itemgetSize());

// inread(buf) 每次读到的数据存放在 buf 数组中
while( (length = inread(buf) ) != -1)
{
//在 buf 数组中 取出数据 写到 (输出流)磁盘上
outwrite(buf, 0, length);

}

inclose();
outclose();
}
}

} catch (FileUploadException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
catch (Exception e) {
// TODO Auto-generated catch block

//eprintStackTrace();
}

requestgetRequestDispatcher("filedemojsp")forward(request, response);

}

}

System.out.println("获取上传文件的总共的容量:"+item.getSize());

3.filedemo.jsp
<%@ page language="java" import="javautil*" pageEncoding="UTF-8"%>
<%
String path = requestgetContextPath();
String basePath = requestgetScheme()+"://"+requestgetServerName()+":"+requestgetServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'filedemojsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="stylescss">
-->

</head>

<body>

用户名:${requestScopeusename } <br/>
文件:${requestScopefile1 }<br/>
${requestScopefile2 }<br/>
<!-- 把上传的图片显示出来 -->
<img alt="go" src="upload/<%=(String)requestgetAttribute("file1")%> " />

</body>
</html>

4结果页面:

以上就是本文的全部

④ 请问你有Thinkphp下使用Bootstrap File Input多文件上传的案例吗

现在我们开始使用插件
(1)首先引入文件
<!--css文件-->
<link href="__PUBLIC__/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />

<link href="__PUBLIC__/css/bootstrap.min.css?v=3.3.6" rel="stylesheet">

<!--js文件-->
<script src="__PUBLIC__/js/jQuery.min.js" type="text/JavaScript"></script>
<script src="__PUBLIC__/js/bootstrap.min.js?v=3.3.6"></script>
<script src="__PUBLIC__/js/plugins/fileinput.js" type="text/javascript"></script>
<script src="__PUBLIC__/js/fileinput.min.js" type="text/javascript"></script>

(2)初始化控件
<input id="file" name="file_data[]" type="file" multiple data-preview-file-type="any" data-show-caption="true">
data-preview-file-type="any" :设置之后可以上传多个文件
name="file_data[]" :因为要上传多个文件所以要用数组
(3)js初始化控件
$("#file").fileinput({
uploadUrl: "{:U('Admin/Img/imgupload2')}",// 上传路径
uploadAsync: false,//是否异步传输
maxFileCount: 5//最大文件上传数量
}).on('filebatchpreupload', function(event, data, id, index) {

}).on('filebatchuploadsuccess', function(event, data) {//上传成功从服务器端返回的数据(即保存的文件名称)
for(var i=0;i<data.response.length;i++){
alert(data.response[i].flag);
}
});
(4)thinkphp对应的方法
public function imgupload2(){
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 3145728 ;// 设置附件上传大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
$upload->rootPath = './Public/Uploads/';// 设置附件上传根目录
$upload->savePath = ''; // 设置附件上传(子)目录
$info = $upload->upload(array($_FILES['file_data'])); // 上传文件
$i=0;
if(!$info) {// 上传错误提示错误信息
$a[$i]['flag']="no";
$this->ajaxReturn($a,'JSON');
}else{// 上传成功 获取上传文件信息
foreach($info as $file){
$a[$i]['flag']=$file['savepath'].$file['savename'];
$i++;
}
}
$this->ajaxReturn($a,'JSON');
}

⑤ 怎么用C#实现文件上传下载 给个完整的案例啊 谢谢 最好带建好的数据库和表

你知道为什么没人回答你吗?是因为你的要求太高了,说明你人比较懒,我只能告诉你,把上传到服务器的文件链接地址存放到数据库中。数据库建立一个表即可。

⑥ 怎么用cftpconnection类编写向ftp server上传文件

为了与FTP Internet服务器通讯,必须先创建一个CInternetSession实例,然后创建CFtpConnection对象。创建CFtpConnection对象不采用直接方式,而是调用CInternetSession::GetFtpConnertion来创建并返回一个指向它的指针。

CFtpConnection类的成员

构造函数 CFtpConnection 构造一个CFtpConnection对象

操作 SetCurrentDirectory 设置当前FTP目录

GetCurrentDirectory 获取此次连接的当前目录

GetCurrentDirectoryAsURL 获取作为URL的此次连接的当前目录

RemoveDirectory 从服务器移去指定目录

CreateDirectory 在服务器上构造一个目录

Rename 将服务器上的文件改名

Remove 从服务器上移去一个文件

PutFile 将一个文件放到服务器上

GetFile 从连接的服务器上获取一个文件

OpenFile 在连接的服务器上打开一个文件

Close 关闭与服务器的连接

实例一:上传文件
CString strAppName = AfxGetAppName();
CInternetSession* pSession = new CInternetSession(strAppName);
CFtpConnection* pConn = pSession->GetFtpConnection("
10.46.1.232","Anonymous","",21);
pConn->SetCurrentDirectory("test");
CString strLocfile,strRemotefile;
strLocfile="C:\\cmd.txt";
strRemotefile="cmd.txt";
pConn->PutFile(strLocfile,strRemotefile,FTP_TRANSFER_TYPE_ASCII);
pConn->Close();
return 0;
实例二:Ftp的打开文件操作函数:OpenFile

⑦ 求SpringMVC大文件上传详解及实例代码

SpringMVC的文件上传非常简便,首先导入文件上传依赖的jar:
<!-- 文件上传所依赖的jar包 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>

在springMVC-servlet.xml配置文件中配置文件解析器:
<!--1*1024*1024即1M resolveLazily属性启用是为了推迟文件解析,以便捕获文件大小异常 -->
<!--文件上传解析器-->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="1048576"/>
<property name="defaultEncoding" value="UTF-8"/>
<property name="resolveLazily" value="true"/>
</bean>
注意解析器的id必须等于multipartResolver,否则上传会出现异常
import org.apache.commons.io.FileUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;

import java.io.File;

@Controller
public class FileController {
/**
* 上传单个文件操作
* MultipartFile file就是上传的文件
* @return
*/
@RequestMapping(value = "/upload1.html")
public String fileUpload1(@RequestParam("file") MultipartFile file) {
try {
//将上传的文件存在E:/upload/下
FileUtils.InputStreamToFile(file.getInputStream(), new File("E:/upload/",
file.getOriginalFilename()));
} catch (Exception e) {
e.printStackTrace();
}
//上传成功返回原来页面
return "/file.jsp";
}}

上传文件时,Controller的方法中参数类型是MultipartFile即可将文件映射到参数上。
页面:
file.jsp:
<form method="post" action="/upload1.html" enctype="multipart/form-data">
<input type="file" name="file"/>
<button type="submit" >提交</button>
</form>

⑧ 谁能说说java批量上传文件的原理,并且给个例子吧 谢了

直接用struts2的就行了,批量也不要想的太复杂,就是后台定义成List<File> uploadFile;页面就是<input type="file" name="uploadFile(这里要和你action方法里定义的那个List<File> uploadFile这个属性名一样)"/>,最后后台action方法 里的话就加一个for循环uploadFile就好了。具体struts2的上传去网络搜了,例子太多,记的加分。

⑨ 司法部案例库怎么上传案例

司法部案例库上传案例的方式如下:
1、点击“智能识别上传”请将文档内容从原文件里复制,然后粘贴到下面的文本框里,点击“同意并提交”。
2、点击“文档上传”将文书的相关信息填写完毕,然后点击“提交”。

⑩ Android图片上传到阿里云OSS小案例

1.在管理控制台找到OOS并开通
2.点击存储空间,创建bucket

1、 Android SDK开发包
Android Studio方式(推荐) Maven依赖

2、权限设置
在 AndroidManifest.xml 文件中已经配置了这些权限,否则,SDK 将无法正常工作。

3.混淆设置
修改 项目名app[proguard-rules.pro ]路径下的proguard-rules.pro文件

4.写工具类
(1)首先要有4个数据
END_POINT 、BUCKET_NAME 、Access Key ID、Access Key Secret
创建你的Access Key 然后将需要的值复制粘贴到工具类对应位置

(2)写工具类,UploadHelper

(按钮点击上传一张图片,因为测试,我就把图片路径写死了)
1、写一个leyout

2.对应的Java类

3、结果验证

看到如上结果,那恭喜你大功告成了。
[ps]有的人可能有个地方会报错,当然不能原原本本的抄了

这里要换成你自己的全局Application Content,

另外,一个HashUtil.java

本文链接: https://blog.csdn.net/qq_37971615/article/details/81975465

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:713
制作脚本网站 发布:2025-10-20 08:17:34 浏览:977
python中的init方法 发布:2025-10-20 08:17:33 浏览:686
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:838
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:745
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1085
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:314
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:194
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:882
python股票数据获取 发布:2025-10-20 07:39:44 浏览:840