當前位置:首頁 » 辦公資訊 » 前端中怎樣上傳下載文件

前端中怎樣上傳下載文件

發布時間: 2022-11-28 00:57:36

❶ .NET 前端大文件上傳如何實現

想要想上傳大文件,必須在web.config文件中進行配置。
在<system.web>節點中添加如下代碼即可:
<httpRuntime maxRequestLength="2097151"/>
這個代碼就是表示設置最大請求值,上傳文件也就相當於請求。maxRequestLength單位為KB,最大值為:2097151.如果不設置,默認為4096 KB (4 MB)。
也就是說上傳的文件最大可以上傳2G以內的文件。
一般沒有配置的話,默認只能上傳4M以內的文件。配置了的話就可以上傳更大的文件。

❷ jsp 如何實現文件上傳和下載功能

上傳:

MyjspForm mf = (MyjspForm) form;// TODO Auto-generated method stub

FormFile fname=mf.getFname();

byte [] fn = fname.getFileData();

OutputStream out = new FileOutputStream("D:\"+fname.getFileName());

Date date = new Date();

String title = fname.getFileName();

String url = "d:\"+fname.getFileName();

Upload ul = new Upload();

ul.setDate(date);

ul.setTitle(title);

ul.setUrl(url);

UploadDAO uld = new UploadDAO();

uld.save(ul);

out.write(fn);

out.close();

下載:

DownloadForm downloadForm = (DownloadForm)form;

String fname = request.getParameter("furl");

FileInputStream fi = new FileInputStream(fname);

byte[] bt = new byte[fi.available()];

fi.read(bt);

//設置文件是下載還是打開以及打開的方式msdownload表示下載;設置字湖集,//主要是解決文件中的中文信息

response.setContentType("application/msdownload;charset=gbk");

//文件下載後的默認保存名及打開方式

String contentDisposition = "attachment; filename=" + "java.txt";

response.setHeader("Content-Disposition",contentDisposition);

//設置下載長度

response.setContentLength(bt.length);

ServletOutputStream sos = response.getOutputStream();

sos.write(bt);

return null;

❸ js如何上傳文件

js採用File API 來上傳文件的。


File API 由一組 JavaScript 對象以及事件構成。賦予開發人員操作在 <input type=」file」 … /> 文件選擇控制項中選定文件的能力。圖 1 展示了 File API 所有的 JavaScript 的組合關系。


File API 簡單示例

<body>
<h1>File API Demo</h1>
<p>
<!-- 用於文件上傳的表單元素 -->
<form name="demoForm" id="demoForm" method="post" enctype="multipart/form-data"
action="javascript: uploadAndSubmit();">
<p>Upload File: <input type="file" name="file" /></p>
<p><input type="submit" value="Submit" /></p>
</form>
<div>Progessing (in Bytes): <span id="bytesRead">
</span> / <span id="bytesTotal"></span>
</div>
</p>
</body>
運行效果:

❹ web前端param怎麼上傳文件

1 首先有一個正確的
2 其次input type需要為"file"
3 如果不需要設置文件類型和大小的話,跟傳一組數據是一樣的格式寫介面代碼就行

❺ vue前端如何實現文件文件夾系統

文件上傳頁面的前端可以選擇使用一些比較好用的上傳組件,例如網路的開源組件WebUploader,澤優軟體的up6,這些組件基本能滿足文件上傳的一些日常所需功能,如非同步上傳文件,文件夾,拖拽式上傳,黏貼上傳,上傳進度監控,文件縮略圖,甚至是大文件斷點續傳,大文件秒傳。
需求:
支持大文件批量上傳(20G)和下載,同時需要保證上傳期間用戶電腦不出現卡死等體驗;
內網百兆網路上傳速度為12MB/S
伺服器內存佔用低
支持文件夾上傳,文件夾中的文件數量達到1萬個以上,且包含層級結構。
支持PC端全平台操作系統,Windows,Linux,Mac
支持文件和文件夾的批量下載,斷點續傳。刷新頁面後繼續傳輸。關閉瀏覽器後保留進度信息。
支持文件夾批量上傳下載,伺服器端保留文件夾層級結構,伺服器端文件夾層級結構與本地相同。

❻ 請問在網頁製作中,怎樣實現文件上傳和下載這個功能呢

你用地什麼製作的啊,本人拿DREAMWEAVER舉例。

1.你首先要建一個站點(站點以及里邊的文件都要用英文)步驟:站點-新建站點
2.然後對站點進行編輯,選則你的站點然後點編輯,然後選擇遠程伺服器里邊的FTP項目。
3.然後把FTP主機的IP寫上去,然後登陸的帳戶和密碼(本人推薦保存密碼)
註:(下面的項依據個人愛好填寫)

❼ JAVA 前端大文件上傳如何實現

如果是頁面傳至後台,那麼頁面上傳文件的時候進行分片處理,如果是後台之間調用,直接代理裡面分片處理。關鍵點,當前一片傳輸完畢之後,收到成功返回才開始傳輸下一片如果傳輸失敗則重傳當前片數,超時重傳。傳輸時帶上文件唯一標識,文件當前片數,總片數,當前片數md5校驗值等。必要參數。 大致為這樣,注意不要內存泄露了。

❽ 詳解前端文件上傳

首先文件上傳首先想到的發post,當然還有其他的上傳協議,我們這里只介紹發post。
post支持四種content-type:

Content-Type 被指定為 application/x-www-form-urlencoded;其次,提交的數據按照 key1=val1&key2=val2 的方式進行編碼,key 和 val 都進行了 URL 轉碼。

首先生成了一個 boundary 用於分割不同的欄位,為了避免與正文內容重復,boundary 很長很復雜。然後 Content-Type 里指明了數據是以 mutipart/form-data 來編碼,本次請求的 boundary 是什麼內容。消息主體里按照欄位個數又分為多個結構類似的部分,每部分都是以 --boundary 開始,緊接著內容描述信息,然後是回車,最後是欄位具體內容(文本或二進制)。如果傳輸的是文件,還要包含文件名和文件類型信息。消息主體最後以 --boundary-- 標示結束。
RFC1867

application/json這個Content-Type都比較熟悉,當然也可以把json放到formData中;
RFC4657

參見RFC,也比較常見。
XML-RFC

在HTML中要有一個包含了文件輸入框的form元素,表單里元素的name一定要寫,最終形成formData時,是以name作為key值

如果直接在form里寫action的話,會刷新表單,同步請求。所以用發送非同步post請求方式。

你還可以不藉助HTML表單,直接向FormData對象中添加一個File對象或者一個Blob對象:

你還可以使用jQuery來發送FormData,但必須要正確的設置相關選項:

MDN:使用FormData

❾ 最近在研究nodejs如何實現文件上傳功能

前端formdata或者Ajax上傳文件
Node端:用multiparty接收文件,再用fs.rename將文件存儲到你需要的位置。
var MULTIPARTY = require('multiparty');
var FS = require('fs');
var saveTowerFile = function (req, res, next) {
var form = new MULTIPARTY.Form({uploadDir: "../appData/excel/"});
form.parse(req, function (err, fields, files) {
if (err) {
console.log("上傳失敗!" + err);
var errcode = {result: "失敗"};
res.send(errcode);
return;
} else {
var inputFile = files.file[0];
var uploadedPath = inputFile.path;
var dstPath = '../appData/excel/' + UUID.v1();
FS.rename(uploadedPath, dstPath, function(err) {
if (err) {
var errcode = {result: "失敗"};
res.send(errcode);
return;
} else {
debug('rename ok');
res.send(「OK」);
}
})
}
});

};

❿ JAVA action中如何 上傳 下載文件

/**
上傳文件
*/
public class FileAction extends Action {

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
try {
FileForm fileform = (FileForm) form;
//取得請求的文件集合
Hashtable hash = fileform.getMultipartRequestHandler().getFileElements();
//得到hashtable的枚舉值
Enumeration enu = hash.elements();
//如果該枚舉值包含有其它的文件
while(enu.hasMoreElements()) {
//得到文件
FormFile file = (FormFile) enu.nextElement();
System.out.println(file);
add(file);
}
return mapping.findForward("yes");
} catch (Exception e) {
e.printStackTrace();
}
return super.execute(mapping, form, request, response);
}
public void add(FormFile file){
try {
//取得寫文件的目錄
String url=servlet.getServletContext().getRealPath("upload");
File f1=new File(url);
if(!f1.exists()){//如果文件目錄不存在
f1.mkdirs();//創建目錄
}
String fileName=file.getFileName();
//創建一個文件輸入流
InputStream is=file.getInputStream();
OutputStream out=new FileOutputStream(url+"/"+fileName);
int byteRead=0;
byte[] by=new byte[8192];
while((byteRead=is.read(by, 0, 8192))!=-1){
out.write(by, 0, byteRead);
}
out.close();
is.close();
file.destroy();
} catch (Exception e) {
e.printStackTrace();
}
}
}

/**
下載文件
*/
頁面一開始進去action,action負責把file文件夾下的所有文件讀入一個ArrayList中
Action代碼如下:
ArrayList list = new ArrayList();
String path=request.getRealPath("/")+"file";
String FullPath;
//System.out.println(path);
myDir=new File(path);
list.clear();
contents=myDir.listFiles();
for(int i=0;i<contents.length;i++){
FullPath=contents.getName();
list.add(FullPath);
//System.out.println(FullPath);
}
request.setAttribute("list",list);
ActionForward forward=new ActionForward("/download.jsp");
return forward;
然後進入download.jsp中,這個頁面主要負責把所有文件顯示,並提供下載連接,代碼如下:
<%@ page language="java" contentType="text/html;charset=GBK" import="java.util.ArrayList"%>
<head>
</style>
</head>
<body>
<%ArrayList list=(ArrayList)request.getAttribute("list");
for(int i=0;i<list.size();i++)
{
String a=java.net.URLEncoder.encode((String)list.get(i));

out.print("<a href=./loaded.do?name="+a+">"+list.get(i)+"</a><br>");
}
%>
</body>
</html>
注意,下劃線畫中的代碼的作用,就是解決問題的所在。
接下來可以直接傳入到loadedaction中,也可以通過一個form,我演示的是通過一個form
Form代碼如下
package org.aeolus.struts.form;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
public class LoadForm extends ActionForm {
/*
*Generated Methods
*/
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}
接下來就是action的代碼
LoadForm doc=(LoadForm)form;
String docName = new String(doc.getName().getBytes("8859_1"));
File f;
if(docName!=""){
String docFullPath=request.getRealPath("/");
f = new File(docFullPath+"file\\"+docName);
response.reset();
response.setContentType("application/x-msdownload;charset=GBK");
System.out.print(response.getContentType());
response.setCharacterEncoding("UTF-8");
docName=java.net.URLEncoder.encode(docName,"UTF-8");
response.setHeader("Content-Disposition", "attachment;filename=" +new String(docName.getBytes("UTF-8"),"GBK"));
BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
byte[] buf = new byte[1024];
int len = 0;
OutputStream out = response.getOutputStream();
while((len = br.read(buf)) >0)
out.write(buf,0,len);
out.close();
response.wait();
ActionForward forward=new ActionForward("/download.jsp");
return forward; }
return null;
注意,下劃線畫中的代碼的作用,就是解決問題的所在。說明一下:
response.setCharacterEncoding("UTF-8");
docName=java.net.URLEncoder.encode(docName,"UTF-8");
response.setHeader("Content-Disposition", "attachment;filename=" +new String(docName.getBytes("UTF-8"),"GBK"));
如果不這樣做你將要下載的文件名是亂碼。

熱點內容
馬路上汽車的噪音在多少分貝 發布:2023-08-31 22:08:23 瀏覽:2126
應孕棒多少錢一盒 發布:2023-08-31 22:08:21 瀏覽:1594
標准養老金一年能領多少錢 發布:2023-08-31 22:05:05 瀏覽:1893
湖北通城接網線多少錢一個月 發布:2023-08-31 21:59:51 瀏覽:1964
開隨車吊車多少錢一個月 發布:2023-08-31 21:55:06 瀏覽:1718
京東付尾款怎麼知道前多少名 發布:2023-08-31 21:52:58 瀏覽:2045
在學校租鋪面一個月要多少錢 發布:2023-08-31 21:52:09 瀏覽:2189
2寸有多少厘米 發布:2023-08-31 21:50:34 瀏覽:1825
知道電壓如何算一小時多少電 發布:2023-08-31 21:46:20 瀏覽:1823
金手鐲54號圈周長是多少厘米 發布:2023-08-31 21:44:28 瀏覽:1970