資源簡介
android客戶端向java服務器端上傳文件(完整版),內嵌了一個android文件瀏覽器 絕對完美歡迎下載

代碼片段和文件信息
package?com.gem.hsx.servlet;
import?java.io.File;
import?java.io.FileOutputStream;
import?java.io.IOException;
import?java.io.InputStream;
import?java.io.PrintWriter;
import?java.util.List;
import?java.util.UUID;
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.FileItemFactory;
import?org.apache.commons.fileupload.disk.DiskFileItemFactory;
import?org.apache.commons.fileupload.servlet.ServletFileUpload;
public?class?UploadServlet?extends?HttpServlet
{
@SuppressWarnings(“unchecked“)
protected?void?service(HttpServletRequest?request
HttpServletResponse?response)?throws?ServletException?IOException
{
String??BOUNDARY=?UUID.randomUUID().toString();
try
{
request.setCharacterEncoding(“UTF-8“);?//?設置處理請求參數的編碼格式
response.setContentType(“text/html;charset=UTF-8“);?//?設置Content-Type字段值
PrintWriter?out?=?response.getWriter();
out.println(“文件開始!“);
//?下面的代碼開始使用Commons-UploadFile組件處理上傳的文件數據
FileItemFactory?factory?=?new?DiskFileItemFactory();?//?建立FileItemFactory對象
ServletFileUpload?upload?=?new?ServletFileUpload(factory);
//?分析請求,并得到上傳文件的FileItem對象
List?items?=?upload.parseRequest(request);
//?從web.xml文件中的參數中得到上傳文件的路徑
String?uploadPath?=?“d:\\upload\\“;
File?file?=?new?File(uploadPath);
if?(!file.exists())
{
file.mkdir();
}
String?filename?=?““;?//?上傳文件保存到服務器的文件名
InputStream?is?=?null;?//?當前上傳文件的InputStream對象
//?循環處理上傳文件
for?(FileItem?item?:?items)
{
//?處理普通的表單域
if?(item.isFormField())
{
if?(item.getFieldName().equals(“filename“))
{
//?如果新文件不為空,將其保存在filename中
if?(!item.getString().equals(““))
filename?=?item.getString(“UTF-8“);
}
}
//?處理上傳文件
else?if?(item.getName()?!=?null?&&?!item.getName().equals(““))
{
//?從客戶端發送過來的上傳文件路徑中截取文件名
filename?=?item.getName().substring(
item.getName().lastIndexOf(“\\“)+1);
is?=?item.getInputStream();?//?得到上傳文件的InputStream對象
}
}
//?將路徑和上傳文件名組合成完整的服務端路徑
filename?=?uploadPath?+BOUNDARY+filename;
//?如果服務器已經存在和上傳文件同名的文件,則輸出提示信息
if?(new?File(filename).exists())
{
new?File(filename).delete();
}
//?開始上傳文件
if?(!filename.equals(““))
{
//?用FileOutputStream打開服務端的上傳文件
FileOutputStream?fos?=?new?FileOutputStream(filename);
byte[]?buffer?=?new?byte[8192];?//?每次讀8K字節
int?count?=?0;
//?開始讀取上傳文件的字節,并將其輸出到服務端的上傳文件輸出流中
while?((count?=?is.read(buffer))?>?0)
{
fos.write(buffer?0?count);?//?向服務端文件寫入字節流
}
fos.close();?//?關閉FileOutputStream對象
is.close();?//?InputStream對象
out.println(“文件上傳成功!“);
}
}
catch?(Exception?e)
{
}
}}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-09-14?12:49??android客戶端向java服務器端上傳文件\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\
?????文件?????????512??2012-09-13?10:54??android客戶端向java服務器端上傳文件\UpFile1\.classpath
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\.myeclipse\
?????文件?????????294??2012-09-13?10:52??android客戶端向java服務器端上傳文件\UpFile1\.myme
?????文件????????1280??2012-09-13?10:55??android客戶端向java服務器端上傳文件\UpFile1\.project
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\.settings\
?????文件?????????330??2012-09-13?10:52??android客戶端向java服務器端上傳文件\UpFile1\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\src\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\src\com\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\src\com\gem\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\src\com\gem\hsx\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\src\com\gem\hsx\servlet\
?????文件????????3240??2012-09-13?22:14??android客戶端向java服務器端上傳文件\UpFile1\src\com\gem\hsx\servlet\UploadServlet.java
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\
?????文件?????????834??2012-09-13?10:52??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\index.jsp
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\libs\
?????文件???????57779??2012-09-11?14:32??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\libs\commons-fileupload-1.2.1.jar
?????文件??????109043??2012-09-11?14:32??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\libs\commons-io-1.4.jar
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\me
?????文件??????????36??2012-09-13?10:52??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\me
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\classes\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\classes\com\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\classes\com\gem\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\classes\com\gem\hsx\
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\classes\com\gem\hsx\servlet\
?????文件????????3597??2012-09-13?22:14??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\classes\com\gem\hsx\servlet\UploadServlet.class
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\lib\
?????文件?????????823??2012-09-11?14:27??android客戶端向java服務器端上傳文件\UpFile1\WebRoot\WEB-INF\web.xm
?????目錄???????????0??2012-09-14?12:46??android客戶端向java服務器端上傳文件\UpFile3\
............此處省略83個文件信息
- 上一篇:java web 聊天室系統數據庫
- 下一篇:java 電話號碼查詢系統哈希表
評論
共有 條評論