private void uploadFile()
{
String end = "\r\n";
String twoHyphens = "--";
String boundary = "*****";
try
{
URL url =new URL(actionUrl);
HttpURLConnection con=(HttpURLConnection)url.openConnection();
/* 允许Input、Output,不使用Cache */
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
/* 设定传送的method=POST */
con.setRequestMethod("POST");
/* setRequestProperty */
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Charset", "UTF-8");
con.setRequestProperty("Content-Type",
"multipart/form-data;boundary="+boundary);
/* 设定DataOutputStream */
DataOutputStream ds =
new DataOutputStream(con.getOutputStream());
ds.writeBytes(twoHyphens + boundary + end);
ds.writeBytes("Content-Disposition: form-data; " +
"name=\"file1\";filename=\"" +
newName +"\"" + end);
ds.writeBytes(end);
/* 取得文件的FileInputStream */
FileInputStream fStream = new FileInputStream(uploadFile);
/* 设定每次写入1024bytes */
int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
int length = -1;
/* 从文件读取数据到缓冲区 */
while((length = fStream.read(buffer)) != -1)
{
/* 将数据写入DataOutputStream中 */
ds.write(buffer, 0, length);
}
ds.writeBytes(end);
ds.writeBytes(twoHyphens + boundary + twoHyphens + end);
/* close streams */
fStream.close();
ds.flush();
/* 取得Response内容 */
InputStream is = con.getInputStream();
int ch;
StringBuffer b =new StringBuffer();
while( ( ch = is.read() ) != -1 )
{
b.append( (char)ch );
}
/* 将Response显示于Dialog */
showDialog(b.toString().trim());
/* 关闭DataOutputStream */
ds.close();
}
catch(Exception e)
{
showDialog(""+e);
}
}
分享到:
相关推荐
<form-property name="file2" type="org.apache.struts.upload.FormFile"/> <form-property name="file3" type="org.apache.struts.upload.FormFile"/> <form-property name="file4" type="org.apache.struts....
在表单页面(例如`upload.jsp`)中,使用Struts2的`<s:file>`标签来创建文件上传输入框: ```jsp <s:form action="upload" enctype="multipart/form-data"> <s:file name="file" label="选择文件"/> <s:submit ...
<form action="upload.action" method="post" enctype="multipart/form-data"> <input type="file" name="uploadFile" /> <input type="submit" value="上传" /> </form> ``` 最后,当用户提交表单后,Struts会...
在Java编程环境中,实现文件上传是一项常见的任务,特别是在构建Web应用程序时。文件上传功能允许用户通过Web界面上传本地文件到服务器,这对于数据交换、图片上传、文档共享等场景至关重要。在本篇中,我们将深入...
<form action="/upload" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <button type="submit">上传</button> </form> </body> </html> ``` 至此,一个简单的基于SpringMVC的...
<form action="upload" method="post" enctype="multipart/form-data"> <html:file property="coverImage" /> <input type="submit" value="Upload" /> </form> </body> </html> ``` 通过以上步骤,我们可以...
在本文中,我们将深入探讨如何在SpringMVC框架中实现文件上传和下载的功能。SpringMVC是Spring框架的一部分,它为构建Web应用程序提供了一个模型-视图-控制器(MVC)架构。通过使用SpringMVC,我们可以轻松地处理...
<form-property name="fileField" type="org.apache.struts.upload.FormFile"/> </form-bean> <controller maxSize="1048576" /> </controller> ``` 在上述配置中,`maxSize`属性值为1048576字节(1MB)。...
在IT行业中,文件的上传和下载是Web应用中不可或缺的功能,尤其在数据交换、资源共享以及信息存储等方面扮演着重要角色。下面将详细讲解文件上传下载的相关知识点,包括Struts框架下的配置以及文件上传的实现。 ...
<form action="/upload" method="post" enctype="multipart/form-data"> <input type="file" name="file" id="file"> <button type="submit">上传文件</button> </form> ``` #### 3. 创建控制器 使用`@...
在Struts配置文件中,`<controller>`元素用于配置ActionServlet,它是Struts框架的核心组件之一,负责接收客户端请求,并根据配置转发给相应的Action。具体属性如下: - **@bufferSize**:指定上传文件的输入缓冲区...
<param-name>upload-directory</param-name> <param-value>/path/to/your/upload/directory</param-value> </init-param> </filter> <filter-mapping> <filter-name>FileUploadFilter</filter-name> <url-...
本文将详细介绍如何使用FileUpload组件来实现在Servlet中的文件上传功能。 首先,导入必要的库,包括Servlet相关的API以及Commons FileUpload的依赖。在Java代码中,你需要在类路径下包含`commons-fileupload`和`...
<param-name>upload-maxFileSize</param-name> <param-value>10485760</param-value> <!-- 10MB --> </init-param> <!-- ... --> </servlet> ``` 接下来,在Action类中,我们需要处理文件上传的请求。首先,...
在Java开发中,SpringMVC是一个非常流行的Web框架,它为构建基于模型-视图-控制器(MVC)模式的应用程序提供了强大支持。当我们需要在Web应用中实现文件的上传和下载功能时,SpringMVC提供了简洁且强大的API来处理...
在Struts中,文件上传是通过一个名为`org.apache.struts.upload.FormFile`的类来实现的,这个类是Struts 1.x版本中的文件上传组件。 在标题和描述中提到的"用Struts上传多个文件的方法",主要是指在Struts框架下...
在Struts的配置文件中,需要为处理文件上传的Action添加一个`<form-bean>`标签,指定`multipart/form-data`编码类型,例如: ```xml <form-bean name="uploadForm" type="com.yourpackage.UploadForm"> <form-...
<form action="/upload" method="post" enctype="multipart/form-data"> <input type="file" name="file" /> <button type="submit">上传</button> </form> ``` **3. 处理文件上传** 使用`@RequestParam`...
本知识点主要聚焦于如何利用JSP和Servlet实现文件上传功能,这是一个在Web应用中非常实用的功能,例如用户在网站上提交简历、上传图片等。 首先,我们需要了解文件上传的基本原理。HTTP协议本身不支持文件上传,但...