<%@ page contentType="text/htmlcharset=GBK" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html>
<head>
<title>
jsp1
</title>
</head>
<body bgcolor="#ffffff">
<html:form action="myupload.do" method="post" enctype="multipart/form-data">
<html:file property="thisFile"/><br>
<html:file property="thisFile"/><br>
<html:submit/>
</html:form>
</body>
</html>
第二,一个javabean
package upload
import org.apache.struts.action.ActionForm
import org.apache.struts.upload.FormFile
import org.apache.struts.action.ActionErrors
import org.apache.struts.action.ActionMapping
import javax.servlet.http.HttpServletRequest
public class FileInfo extends ActionForm {
private FormFile thisFile
public FormFile getThisFile() {
return thisFile
}
public void setThisFile(FormFile thisFile) {
this.thisFile = thisFile
}
public ActionErrors validate(ActionMapping actionMapping,
HttpServletRequest httpServletRequest) {
/** @todo: finish this method, this is just the skeleton.*/
return null
}
public void reset(ActionMapping actionMapping,
HttpServletRequest servletRequest) {
}
}
第三,一个action
package upload
import java.io.*
import org.apache.struts.action.ActionMapping
import org.apache.struts.action.ActionForm
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
import org.apache.struts.action.ActionForward
import org.apache.struts.action.Action
import org.apache.struts.upload.FormFile
public class myupload extends Action {
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response) throws
FileNotFoundException, IOException {
FileInfo fileInfo = (FileInfo) actionForm
//获取上传文件
FormFile f=fileInfo.getThisFile()
InputStream is=f.getInputStream()
//将文件存入服务器上
String filename=request.getSession().getServletContext().getRealPath("/shangchuan/"+f.getFileName())
OutputStream os=new FileOutputStream(filename)
int x=0
//优化流处理过程
byte[] buffer = new byte[8192]
while((x=is.read(buffer, 0, 8192))!=-1)
{
os.write(buffer,0,x)
}
os.close()
response.sendRedirect("jsp1.jsp")//根据实际情况跳转
return null
}
}
平时在工作中经常连接Linux/Unix服务器,有的服务器是UTF-8,有的服务器是GBK。在Windows下SecureCRT可以完美解决这个问题,在Mac下要通过修改配置进行切换,比较麻烦。
下面隆重介绍一款Terminal下输出转码的工具—— LUIT 支持Mac、Linux原生的Terminal。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)