http上传技术的java实现(编辑修改稿)内容摘要:
init(PageContext pc) 初始化 public Enumeration getFiles() 获取 UploadFile 对象集合 public int getFileCount() 获取 UploadFile 对象数量,即上传文件数 public Enumeration getParameterNames() 获取非文件类型变量名集合 public String[] getParameterValues(String key) 获取变量名为 key 的变量值 public void uploadFiles() throws Exception 上传文件 public void setPath(String path) 设置上传文件在服务器上的保存路径 Upload 通过方法 init 来取得 request 对象和服务器当前路径,通过方法 uploadFiles在 服务器端保存文件。 由于篇幅有限,现在只介绍类 Upload 中的解析报文保存文件的核心源码: 1. Upload 要引用的类库 import。 // 自定义的 UploadFile 类 import。 import。 import。 import .*。 import .*。 其中 类包不在 J2SE 中,通常在我们使用的 JSP 服务器(如 Tomcat)中会包含该类包的 jar,本文所使用的服务器是 ,在 Resin 的 lib 目录下的 即包含该类包,编译时我们在 classpath 中指定该 jar 即可。 2. 成员变量和类的初始化 1)类 Upload 包括如下 5个成员变量: private PageContext pageContext。 //pageContext对象 private ServletRequest request。 // request对象 private Vector vector。 // 非文件类型数据列表 private Vector files。 // 文件类型数据列表 private String savePath。 // 文件上传路径 2)构造函数,用于初始化成员变量 public Upload(){ pageContext = null。 request = null。 vector = new Vector()。 // 创建列表 files = new Vector()。 // 创建列表 savePath = null。 } 3) 初始化函数 public void init(PageContext pc){ //// 初始化 if(pc !=null){ = pc。 = ()。 // 取服务器端当前路径为上传路径 = (/)。 } } 3. ploadFiles函数及其调用的私有函数 1) getNoteString, 取一行报文 ,不含回车换行符 private String getNoteString(ServletInputStream in){ StringBuffer sb = new StringBuffer()。 int c。 try{ while( (c= ())!= 1){ char ch =(char) c。 (ch)。 if(ch==39。 \n39。 ) break。 } }catch(IOException e){ } //// 截取子串,去掉回车换行符。http上传技术的java实现(编辑修改稿)
相关推荐
Enter port 1012 tag typQ) [none]: Enter VLAN Name {?} []: 5A Menu options (Corebuilder 90005225FF): summary Display summary information detail Display detail information define Define a VLAN modify
/* private data for the adapter */ struct semaphore lock。 unsigned int flags。 /* flags specifying div. data */ struct i2c_client *clients[I2C_CLIENT_MAX]。 int client_count。 int timeout。 int retries。
等长编 码所对应的编码二叉树也可以直接看出,任何一个叶子结点都不可能是其它叶子结点的双亲,也就是说,只有当一个结点是另一个结点的双亲时,该结点的字符编码才会是另一个结点的字符编码的前缀。 为了使不等长编码为前缀编码,可用该字符集中的每个字符作为叶子结点生成一棵编码二叉树,为了获得文件的最短长度,特将每个字符的出现频率作为字符结点的权值赋予该结点上,求出此树的最小带权路径长度就等于文件的最短长度。
文标) 视频教程 国际经济合作(俞剑平) 视频教程 商法及讲稿(梁上上) 视频教程 宪法 视频教程 票据法(韩家勇) 视频教程 企业法(梁上上) 视频教程 环境资源法(钱水苗) 视频教程 税法(罗关良) 视频教程 国际贸易函电 视频教程 管理经济学 (胡介埙) 视频教程 外国法制史(方立新) 视频教程 国际 经济法 视频教程 知识产权法(张献伟) 视频教程 国际私法与讲稿(严飞) 视频教程
liToday liTommorow /ol 1. Today 2. Tommorow 定义列表 (Definition lists) dldt...dd.../dl dl dtToday ddToday is yesterday. dtTomorrow ddTomorrow is today. /dl Today Today will be yesterday. Tomorrow
le cellspacing=点数> 【 3】设定资料与格线的距离 cellpadding < table cellpadding=点数> 【 4】调整表格宽度 width < table width=点数或百分比> 【 5】调整表格高度 height < table height=点数或百分比> 【 6】设定表格背景色彩 bgcolor < table bgcolor=rrggbb> 【