導航:首頁 > 編程語言 > java接收上傳的文件

java接收上傳的文件

發布時間:2022-08-28 15:27:27

1. webuploader上傳大文件後台java怎麼接收

if(request.getHeader("content-type")!=null&&"application/x-www-form-urlencoded".equals(request.getHeader("content-type"))){
returnnull;
//將請求轉換成MultipartHttpServletRequest
=(MultipartHttpServletRequest)request;
Enumeration<String>ps=mRequest.getParameterNames();
while(ps.hasMoreElements()){
Stringhname=ps.nextElement();
System.out.println(hname);
System.out.println(mRequest.getParameter(hname));
}

//獲值
Stringvalue=mRequest.getParameter("key");//獲取單個數據的時候,取key值

Iterator<String>fns=mRequest.getFileNames();//獲取上傳的文件列表
while(fns.hasNext()){
Strings=fns.next();

MultipartFilemFile=mRequest.getFile(s);
if(mFile.isEmpty()){
map.put("error","message");
}else{
StringbasePath=Constant.BASEPICUPLOADPATH;
StringdPath=Constant.SDF_PARAM.format(newDate());
Filedir=newFile(basePath+dPath);
if(!dir.exists()){
dir.mkdirs();
}
StringoriginFileName=mFile.getOriginalFilename();
Stringsuffix=originFileName.split("\.")[originFileName.split("\.").length-1];
Stringbase64Name=UUID.randomUUID().toString();
Filefile=newFile(basePath+dPath,base64Name+"."+suffix);
try{
FileUtils.InputStreamToFile(mFile.getInputStream(),file);//存儲文件
}catch(IOExceptione){
e.printStackTrace();
}
}
}


//最近剛好在做這方面的,希望能解決你的問題

2. java怎麼接收前端傳過來的視頻文件然後保存到本地的一個文件夾

用spring boot裡面的MultipartFile的方法transferTo(),裡面傳一個File類型的參數,傳進去的參數要是文件,不是文件夾

3. java後台怎麼拿到上傳的文件

import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

public class EntityServlet1 extends HttpServlet {

private static final long serialVersionUID = 1L;
private String uploadPath = "D:\\temp"; // 上傳文件的目錄
File tempPathFile;

// 重寫doPost方法,處理事件識別請求
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
try {
// Create a factory for disk-based file items
DiskFileItemFactory factory = new DiskFileItemFactory();

// Set factory constraints
factory.setSizeThreshold(4096); // 設置緩沖區大小,這里是4kb
factory.setRepository(tempPathFile);// 設置緩沖區目錄

// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);

// Set overall request size constraint
upload.setSizeMax(4194304); // 設置最大文件尺寸,這里是4MB

List<FileItem> items = upload.parseRequest(request);// 得到所有的文件
Iterator<FileItem> i = items.iterator();
while (i.hasNext()) {
FileItem fi = (FileItem) i.next();
String fileName = fi.getName();
if (fileName != null) {
File fullFile = new File(new String(fi.getName().getBytes(), "utf-8")); // 解決文件名亂碼問題
File savedFile = new File(uploadPath, fullFile.getName());
fi.write(savedFile);
}
}
System.out.print("upload succeed");
} catch (Exception e) {

}
}
}

4. 各位Java大神們,求解答,Java後台如何獲取前台的上傳的文件,文件不需要存伺服器,就臨時用。

不需要上傳伺服器,是要用文件里的內容吧,那你直接讀取文件就好了

5. PHP 用curl發送文件給JAVA後台,JAVA可以接收文件嗎

這個完全可行啊,無論你是什麼語言發送文件到什麼語言,都是可以接收的啊。
就好像送禮和收禮,無論什麼人都可以送禮,也無論什麼人都可以收禮。
而且PHP CURL 上傳文件到JAVA端是完全沒問題的,前提是JAVA端有對應的接收代碼,要不然你送禮給人家,人家門都不讓你進,那你也沒轍啊
當然了,你如果想要代碼的話,我就給不了你了,因為JAVA~~不懂

6. ajax上傳文件後,後台java如何接收(求後台接收的完整代碼)

寫一個servlet或jsp來接收,在servlet或jsp處理業務邏輯,後返回處理結果或新的數據
如jsp:

<%@ page errorPage="/common/error/error.jsp" %>
<%@ page contentType="text/html;charset=GBK"%>
<%
String planeNumber = request.getParameter("planeNumber");
String planeType = com.aerolink.aocs.system.parameter.list.PlaneTypeFactory.getPlaneType(planeNumber);
response.getWriter().write(planeType);%>

7. webuploader用java怎麼接收

文件的分塊上傳
前端根據需要發送的文件生成一個md5字元串發送給後台,後台創建以該md5字元串命名的文件夾。前端分塊發送文件並發送文件塊序號給後台,後台接收到文件後按序號名稱保存。前端發送完成後通知後台合並文件。
前端配置,開啟是否分塊、分塊大小、線程個數等
// 上傳基本配置
var uploader = WebUploader.create(
{
swf:"${pageContext.request.contextPath }/js/Uploader.swf",
server:"${pageContext.request.contextPath }/FileUploadServlet",
pick:"#filePicker",
auto:true,
dnd:"#dndArea",
disableGlobalDnd:true,
paste:"#uploader",

// 分塊上傳設置
// 是否分塊
chunked:true,
// 每塊文件大小(默認5M)
chunkSize:5*1024*1024,
// 開啟幾個並非線程(默認3個)
threads:3,
// 在上傳當前文件時,准備好下一個文件
prepareNextFile:true
}
);

8. Java伺服器怎麼接收手機上傳過來的文件。求具體代碼,謝謝,如果覺得懸賞太少的話可以說,我再加。急。。

android客戶端代碼:
public class MainActivity extends Activity
{
private TextView uploadInfo;

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

uploadInfo = (TextView) findViewById(R.id.upload_info);

uploadFile();
}

public void uploadFile()
{
//伺服器端地址
String url = "http://192.168.0.108:8080/UploadFileServer/upload";
//手機端要上傳的文件,首先要保存你手機上存在該文件
String filePath = Environment.getExternalStorageDirectory()
+ "/1/power.apk";

AsyncHttpClient httpClient = new AsyncHttpClient();

RequestParams param = new RequestParams();
try
{
param.put("file", new File(filePath));
param.put("content", "liucanwen");

httpClient.post(url, param, new AsyncHttpResponseHandler()
{
@Override
public void onStart()
{
super.onStart();

uploadInfo.setText("正在上傳...");
}

@Override
public void onSuccess(String arg0)
{
super.onSuccess(arg0);

Log.i("ck", "success>" + arg0);

if(arg0.equals("success"))
{
Toast.makeText(MainActivity.this, "上傳成功!", 1000).show();
}

uploadInfo.setText(arg0);
}

@Override
public void onFailure(Throwable arg0, String arg1)
{
super.onFailure(arg0, arg1);

uploadInfo.setText("上傳失敗!");
}
});

} catch (FileNotFoundException e)
{
e.printStackTrace();
Toast.makeText(MainActivity.this, "上傳文件不存在!", 1000).show();
}
}
}
伺服器端代碼:
public class UploadFileServlet extends HttpServlet
{

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();

// 創建文件項目工廠對象
DiskFileItemFactory factory = new DiskFileItemFactory();

// 設置文件上傳路徑
String upload = this.getServletContext().getRealPath("/upload/");
// 獲取系統默認的臨時文件保存路徑,該路徑為Tomcat根目錄下的temp文件夾
String temp = System.getProperty("java.io.tmpdir");
// 設置緩沖區大小為 5M
factory.setSizeThreshold(1024 * 1024 * 5);
// 設置臨時文件夾為temp
factory.setRepository(new File(temp));
// 用工廠實例化上傳組件,ServletFileUpload 用來解析文件上傳請求
ServletFileUpload servletFileUpload = new ServletFileUpload(factory);

// 解析結果放在List中
try
{
List<FileItem> list = servletFileUpload.parseRequest(request);

for (FileItem item : list)
{
String name = item.getFieldName();
InputStream is = item.getInputStream();

if (name.contains("content"))
{
System.out.println(inputStream2String(is));
} else if(name.contains("file"))
{
try
{
inputStream2File(is, upload + "\\" + item.getName());
} catch (Exception e)
{
e.printStackTrace();
}
}
}

out.write("success");
} catch (FileUploadException e)
{
e.printStackTrace();
out.write("failure");
}

out.flush();
out.close();
}

// 流轉化成字元串
public static String inputStream2String(InputStream is) throws IOException
{
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int i = -1;
while ((i = is.read()) != -1)
{
baos.write(i);
}
return baos.toString();
}

// 流轉化成文件
public static void inputStream2File(InputStream is, String savePath)
throws Exception
{
System.out.println("文件保存路徑為:" + savePath);
File file = new File(savePath);
InputStream inputSteam = is;
BufferedInputStream fis = new BufferedInputStream(inputSteam);
FileOutputStream fos = new FileOutputStream(file);
int f;
while ((f = fis.read()) != -1)
{
fos.write(f);
}
fos.flush();
fos.close();
fis.close();
inputSteam.close();

}

}

閱讀全文

與java接收上傳的文件相關的資料

熱點內容
脈脈app干什麼用的 瀏覽:357
拽姐是哪個app 瀏覽:858
雲伺服器刪除了還有嗎 瀏覽:232
macbook可以用單片機嘛 瀏覽:307
南陽php招聘 瀏覽:814
去哪裡找按摩師很漂亮的app 瀏覽:818
86x99用簡便演算法計算 瀏覽:830
php截圖flash 瀏覽:273
卸載聯想app哪個好 瀏覽:719
php文字轉圖片 瀏覽:330
豆客後台怎麼加密碼 瀏覽:574
jpg轉換pdf破解版 瀏覽:978
php基礎書籍推薦 瀏覽:777
伺服器與外網不通如何驗證 瀏覽:351
電子版是不是就是文件夾 瀏覽:51
游戲屬性文件加密 瀏覽:464
如何讓安卓手機桌面圖標下移 瀏覽:530
ubuntuphp5環境搭建 瀏覽:101
賭癮解壓視頻 瀏覽:919
晉城移動dns伺服器地址 瀏覽:296