《JSP实用教程第5章 JSP中的操作.ppt》由会员分享,可在线阅读,更多相关《JSP实用教程第5章 JSP中的操作.ppt(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第2版Powerpoint制作耿祥义张跃平n配合第2版 例子源代码一起使用例子源代码一起使用(源码网:http:/ JSPJSP通通过过JavaJava的的输输入入/输输出出流流来来实实现现文文件件的的读读写写操操作作。本本章章采采用用JSP+JavaBeanJSP+JavaBean的的设设计计模模式式来来学学习习文文件件的的操操作作,即即将将有有关关文件的读写指派给文件的读写指派给bean.bean.1.File File 类类 File类类的的对对象象主主要要用用来来获获取取文文件件本本身身的的一一些些信信息息,例例如如文文件件所所在在的的目目录录、文文件件的的长长度度、文文件件读读写写权
2、权限限等等,不不涉涉及及对对文文件件的的读读写操作。写操作。public String getName()public String getName()获取文件的名字。获取文件的名字。public boolean canRead()public boolean canRead()判断文件是否是可读的。判断文件是否是可读的。public boolean canWrite()public boolean canWrite()判断文件是否可被写入。判断文件是否可被写入。public boolean exists()public boolean exists()判断文件是否存在。判断文件是否存在。pu
3、blic long length()public long length()获取文件的长度(单位是字节)。获取文件的长度(单位是字节)。public public String String getAbsolutePath()getAbsolutePath()获获取取文文件件的的绝绝对对路路径。径。public String getParent()public String getParent()获取文件的父目录。获取文件的父目录。public public boolean boolean isFile()isFile()判判断断文文件件是是否否是是一一个个正正常常文文件件,而不是目录。而不是
4、目录。创建与删除创建与删除Web服务目录服务目录 public public boolean boolean mkdir()mkdir()创创建建一一个个目目录录,如如果果创创建建成成功功返返回回truetrue,否否则则返返回回falsefalse(如如果该目录已经存在将返回果该目录已经存在将返回falsefalse)。)。public public boolean boolean delete()delete()可可以以删删除除当当前前FileFile对对象象代代表表的的文文件件或或目目录录,如如果果FileFile对对象象表表示示的的是是一一个个目目录录,则则该该目目录录必必须须是是一一
5、个个空空目目录录,删除成功返回删除成功返回truetrue。3.读写文件读写文件njava.iojava.io包包提提供供大大量量的的流流类类,所所有有字字节节输输入入流流类类都都是是InputStreamInputStream(输输入入流流)抽抽象象类类的的子子类类,而而所所有有字字节节输输出出流流都都是是OutputStreamOutputStream(输输出出流流)抽抽象象类类的的子子类类。字字节节流流不不能能直直接接操操作作UnicodeUnicode字字符符,所所以以JavaJava提提供供了了字字符符流流。由由于于汉汉字字在在文文件件中中占占用用2 2个个字字节节,如如果果使使用用
6、字字节节流流,读读取取不不当当会会出出现现乱乱码码现现象象,采采用用字字符符流流就就可可以以避避免免这这个个现现象象。在在UnicodeUnicode字字符符中中,一一个个汉汉字字被被看看做做一一个个字字符符。所所有有字字符符输输入入流流类类都都是是ReaderReader(输输入入流流)抽抽象象类类的的子子类类,而而所所有有字字符符输输出出流流都都是是WriterWriter(输输出出流)抽象类的子类。流)抽象类的子类。4.4.文件上传文件上传 nJSPJSP页页面面提提供供FileFile类类型型的的表表单单,FileFile类类型型的的表表单单可可以以让让用用户户选选择择要要上上传传的的
7、文文件件。FileFile类类型型表表单的格式如下:单的格式如下:FORM action=接接受受上上传传文文件件的的页页面面 method=post enctype=multipart/form-datanbean负负责责将将用用户户选选择择的的文文件件上上传传到到服服务务器器。bean可可以以让让内内置置对对象象request调调用用方方法法getInputStream()获获得得一一个个输输入入流流,通通过过这这个个输输入入流流读读入入客客户户上上传传的的全全部部信信息息,包包括括文文件件的的内内容容以以及及表表单单域域的的信信息息。bean可可以以从上传的全部信息中分离出文件的内容,并
8、保存在服务器端。从上传的全部信息中分离出文件的内容,并保存在服务器端。5.5.文件下载文件下载nTomcat5.5服务器提供了方便的下载功能。只需让内置对象response调用方法response.setHeader(Content-disposition,attachment;filename=下载的文件名字);添加下载的头给客户的浏览器即可.6.6.标准化考试标准化考试(1)(1)使使用用网网络络进进行行标标准准化化考考试试是是一一种种常常见见的的考考试试形形式式,大大部部分分标标准准化化考考试试都都使使用用数数据据库库来来处处理理有有关关的的数数据据。使使用用数数据据库库可可以以方方便便
9、地地管管理理有有关关的的数数据据,却却降降低低了了系系统统的的效效率率。基基于于文文件件来来管管理理有有关关的的数数据据,可可以以提提高高系系统统的的效效率率,但但要要求求合合理理地地组组织织有有关数据,以便系统方便地管理数据。关数据,以便系统方便地管理数据。(2)(2)为为了了使使beanbean方方便便地地处处理理数数据据,要要求求试试题题文文件件存存放放在在D:2000D:2000中中,并并且且试试题题文文件件的的第第一行必须是全部试题的答案(用来判定考试者的分数)。例如:一行必须是全部试题的答案(用来判定考试者的分数)。例如:BDB1 1Take an umbrella with yo
10、u in case_.Take an umbrella with you in case_.A.it will rain B.it rains C.it raining D.it rained2 2Could you tell me_?I am his old friend.Could you tell me_?I am his old friend.A.where does Jim live B.when will Jim com back C.how is Jim D.where Jim has gone.3 3During the recession,thousands of workers were_?During the recession,thousands of workers were_?A.laid on B.laid down C.laid out D.laid off