如何在jsp里写多文件文件上传的java代码
展开全部 1.打开eclipse→Windows→Preferences→Java→Editor→Content Assist修改Auto Activation triggers for java的值为:zjava 点击apply按钮如图:2.继续打开JavaScript→Editor→Content Assist修改Auto Activation triggers for javaScript的值为:zjs 点击apply按钮(若无法修改,则先选中"Enable auto activation"复选框,然后再修改)如图:3.继续打开web→html Files→Editor→Content Assist修改Prompt when these characters are inserted:的值为:zhtml 点击apply按钮如图:4.打开File→Export→Genral→Preferences→导出一文件到任意位置5.然后用记事本打开此文件 Ctrl+F查找 zjava 然后将其值改为 .abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ再查找 zjs 然后将其值改为 .abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ再查找 zhtml 然后将其值改为 <=.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ...
jsp页面中如何视频文件上传的代码实现
代码如下:using System;using System.IO;public partial class _Default : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}/// /// 保存文件/// /// 事件源/// 事件参数protected void btnSave_Click(object sender, EventArgs e){if (!fld.HasFile){Alert("请先选择要上传的文件!");return;}if (!FileExtendsCheck(fld.FileName)){Alert("文件格式不正确!");return;}string path = Server.MapPath("FileUpload") + "\\" + fld.FileName;if (File.Exists(path)){Alert("文件已存在!"); // 对此,可以选择构造动态文件名,这里只作演示return;}try{fld.SaveAs(Server.MapPath("FileUpload") + "\\" + fld.FileName);}catch (Exception ex){Alert("错误:"+ex.Message);return;}Alert("上传成功!");}/// /// 文件后缀名检查/// /// 文件名/// private bool FileExtendsCheck(string fileName){// 允许的上传的文件的后缀名string [] allowExtends = new string[]{".doc",".docx",".pdf",".xls",".ppt"};fileName = fileName.ToLower();bool allow = false;foreach (var allowExtend in allowExtends){if (fileName.EndsWith(allowExtend)){allow = true;break;}}return allow;}/// /// 提示消息/// /// 消息内容private void Alert(string msg){ClientScript.RegisterClientScriptBlock(this.GetType(),"DefaultKeys","alert(\""+msg+"\");",true);}}// 备注:fld 为 FileUpload 控件
...写入了文字,另存为html格式,如何将生成的html代码方便的运用到...
展开全部 含义 ENCTYPE="multipart/form-data" 说明: 通过 http 协议上传文件 rfc1867协议概述,jsp 应用举例,客户端发送内容构造 1、概述在最初的 http 协议中,没有上传文件方面的功能。
rfc1867 (http://www.ietf.org/rfc/rfc1867.txt) 为 http 协议添加了这个功能。
客户端的浏览器,如 Microsoft IE, Mozila, Opera 等,按照此规范将用户指定的文件发送到服务器。
服务器端的网页程序,如 php, asp, jsp 等,可以按照此规范,解析出用户发送来的文件。
Microsoft IE, Mozila, Opera 已经支持此协议,在网页中使用一个特殊的 form 就可以发送文件。
绝大部分 http server ,包括 tomcat ,已经支持此协议,可接受发送来的文件。
各种网页程序,如 php, asp, jsp 中,对于上传文件已经做了很好的封装。
2、上传文件的实例:用 servelet 实现(http server 为 tomcat 4.1.24)1. 在一个 html 网页中,写一个如下的form : load multi files : text field : 用户可以选择多个文件,填写表单其它项,点击“提交”按钮后就开始上传给 http://192.168.29.65/upload_file/UploadFile 这是一个 servelet 程序注意 enctype="multipart/form-data", method=post, type="file" 。
根据 rfc1867, 这三个属性是必须的。
multipart/form-data 是新增的编码类型,以提高二进制文件的传输效率。
具体的解释请参阅 rfc18672. 服务端 servelet 的编写现在第三方的 http upload file 工具库很多。
Jarkata 项目本身就提供了fileupload 包http://jakarta.apache.org/commons/fileupload/ 。
文件上传、表单项处理、效率问题基本上都考虑到了。
在 Struts 中就使用了这个包,不过是用 Struts 的方式另行封装了一次。
这里我们直接使用 fileupload 包。
至于Struts 中的用法,请参阅 Struts 相关文档。
这个处理文件上传的 servelet 主要代码如下: public void doPost( HttpServletRequest request, HttpServletResponse response ) { DiskFileUpload diskFileUpload = new DiskFileUpload(); // 允许文件最大长度 diskFileUpload.setSizeMax( 100*1024*1024 ); // 设置内存缓冲大小 diskFileUpload.setSizeThreshold( 4096 ); // 设置临时目录 diskFileUpload.setRepositoryPath( "c:/tmp" ); List fileItems = diskFileUpload.parseRequest( request ); Iterator iter = fileItems.iterator(); for( ; iter.hasNext(); ) { FileItem fileItem = (FileItem) iter.next(); if( fileItem.isFormField() ) { // 当前是一个表单项 out.println( "form field : " + fileItem.getFieldName() + ", " + fileItem.getString() ); } else { // 当前是一个上传的文件 String fileName = fileItem.getName(); fileItem.write( new File("c:/uploads/"+fileName) ); } }} 为简略起见,异常处理,文件重命名等细节没有写出。
3、 客户端发送内容构造假设接受文件的网页程序位于 http://192.168.29.65/upload_file/UploadFile.假设我们要发送一个二进制文件、一个文本框表单项、一个密码框表单项。
文件名为 E:\s ,其内容如下:(其中的XXX代表二进制数据,如 01 02 03)abbXXXccc 客户端应该向 192.168.29.65 发送如下内容: POST /upload_file/UploadFile HTTP/1.1 Accept: text/plain, */* Accept-Language: zh-cn Host: 192.168.29.65:80 Content-Type:multipart/form-data;boundary=---------------------------7d33a816d302b6 User-Agent: Mozilla/4.0 (compatible; OpenOffice.org) Content-Length: 424 Connection: Keep-Alive -----------------------------7d33a816d302b6 Content-Disposition:form-data; name="userfile1"; filename="E:\s"Content-Type: application/octet-stream abbXXXccc -----------------------------7d33a816d302b6 Content-Disposition: form-data; name="text1" foo -----------------------------7d33a816d302b6 Content-Disposition: form-data; name="password1" bar -----------------------------7d33a816d302b6-- (上面有一个回车)此内容必须一字不差,包括最后的回车。
注意:Content-Length: 424 这里的424是红色内容的总长度(包括最后的回车) 注意这一行:Content-Type: multipart/form-data; boundary=---------------------------7d33a816d302b6 根据 rfc1867, multipart/form-data是必须的.---------------------------7d33a816d302b6 是分隔符,分隔多个文件、表单项。
其中33a816d302b6 是即时生成的一个数字,用以确保整个分隔符不会在文件或表单项的内容中出现。
前面的 ---------------------------7d 是 IE 特有的标志。
Mozila 为---------------------------71用手工发送这个例子,在上述的 servlet 中检验通过。
使用POST发送数据 以POST方式发送数据主要是为了向服务器发送较大量的客户端的数据,它不受URL的长度限制。
POST请求将数据以URL编码的形式放在HTTP正文中,字段形式为fieldna...
转载请注明出处51数据库 » 用jsp上传word文档代码
此ren多半有病