文档分类
} %>
下面列出了服务器上的一些jsp文件
<% File dir=new File(\ FileJSP file_jsp=new FileJSP(\ String file_name[]=dir.list(file_jsp); for(int i=0;i<5;i++)
{out.print(\ } %>
输入文件的名字读取JSP文件的源代码内容:
输入文件的名字显示该JSP文件的运行效果:
读取文件的servlet源文件 ReadFileServlet: import java.io.*; import javax.servlet.*; import javax.servlet.http.*;
public class ReadFileServlet extends HttpServlet {
public void init(ServletConfig config) throws ServletException {super.init(config); }
//doPost方法使用了回压流来读取JSP文件的源代码:
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException { //获取提交的文件的名字:
String name=request.getParameter(\ //获得一个向客户发送数据的输出流:
26
PrintWriter out=response.getWriter();
response.setContentType(\MIME类型。
out.println(\ out.println(\
File f=new File(\ try{ FileReader in=new FileReader(f) ;
PushbackReader push=new PushbackReader(in); int c;
char b[]=new char[1];
while ( (c=push.read(b,0,1))!=-1)//读取1个字符放入字符数组b。 { String s=new String(b);
if(s.equals(\ { push.unread('&');
push.read(b,0,1); //push读出被回压的字符字节,放入数组b. out.print(new String(b)); push.unread('L');
push.read(b,0,1); //push读出被回压的字符字节,放入数组b. out.print(new String(b)); push.unread('T');
push.read(b,0,1); //push读出被回压的字符字节,放入数组b. out.print(new String(b)); }
else if(s.equals(\ { push.unread('&');
push.read(b,0,1); //push读出被回压的字符字节,放入数组b. out.print(new String(b)); push.unread('G');
else if(s.equals(\ { out.print(\ }
27
else
{out.print(new String(b)); } }
push.close(); }
catch(IOException e){} out.println(\ out.println(\ }
//doGet方法将显示JSP源文件运行的效果
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException { String name=request.getParameter(\ //获得一个向客户发送数据的输出流: PrintWriter out=response.getWriter();
BufferedReader bufferin=new BufferedReader(in); String str=null;
while((str=bufferin.readLine())!=null) {out.print(\ }
bufferin.close(); in.close(); }
catch(IOException e){} out.println(\ out.println(\ } }
28
图7.14 提交文件名字的JSP页面图7.15 用servlet读取JSP文件源代码图7.16 用servlet显示JSP文件运行效果
7.6.2 写文件
在这节,我们通过一个servlet实现小说内容的续写来说明servlet在写文件中的技巧。在下面的例子13中,通过一个JSP页面显示给用户一个小说文件的已有内容,小说文件存放在服务器的F:/2000下,文件名字是story.txt。JSP文件存放在Root服务目录下。用户可以通过Post方式将小说的新内容提交给一个servlet,该servelt存放在服务目录examples下的Web-inf/classes中。这个servlet将用户提交的内容写入小说文件的尾部。
例子13(效果如图7.17所示) 提交小说内容的JSP页面 story.jsp:
<%@ page contentType=\<%@ page import =\
29
<% File f=new File(\ //列出小说的内容:
try{ RandomAccessFile file= new RandomAccessFile(f,\ String temp=null;
while((temp=file.readUTF())!=null)
{ byte d[]=temp.getBytes(\ temp=new String(d); out.print(\ }
file.close(); }
catch(IOException e){} %>
请输入续写的新内容:
续写文件的servlet源文件: Write.java: import java.io.*; import javax.servlet.*; import javax.servlet.http.*;
public class Write extends HttpServlet { //声明一个共享的文件和共享字符串: File f=null; String use=\
30
相关推荐: