您现在的位置是: 软件 > 开发者网络 > 程序方舟 > 服务器端脚本编程 > JSP专辑 > 正文


-五彩屏保自己做
-Visual Basic 控件及技巧编程
-精通Photoshop的色彩调整
-Visual Basic 硬件与系统设计

在JSP中操作文件
2002-05-08· ·包路跃··Yesky

1 2 3 4 5 6  下一页

  综述:无论是用JavaServer Page(JSP)技术,还是ASP、PHP技术实现的网站,都可能有计数器、投票等功能,这些功能的实现离不开对文件的操作。由此可见,文件操作对网站的建设来说,有着很重要的作用。
  本章首先介绍了JSP中文件的基本操作,包括读取操作、写入操作以及追加操作,然后在此基础上,通过实例,说明如何通过这三种基本操作,来实现计数器、投票等复杂功能。
JSP对文件的基本操作有哪些?

  读取操作

  读取操作是文件操作的基本功能之一,在计数器、投票统计中有着广泛的应用。那么,该操作在JSP中是如何实现的呢?请看下面的例子。

  本例用到了两个文件,一个jsp文件,一个Javabean文件。通过jsp中调用Javabean可以轻松读取文本文件,注意请放置一个文本文件afile.txt到web根目录的test目录下,Javabean文件编译后将class文件放到对应的class目录下(tomcat环境)。

Read.jsp

<html>
<head>
<title>读取一个文件</title>
</head>
<body bgcolor="#000000">
<%--调用Javabean --%>
<jsp:useBean id="reader" class="DelimitedDataFile" scope="request">
<jsp:setProperty name="reader" property="path" value="/test/afile.txt" />
</jsp:useBean>

<h3>文件内容:</h3>
<p>
<%
int count = 0;
while (reader.nextRecord() != -1)
{
count++;
%>
<b>第<% out.print(count); %>行:</b>
<% out.print(reader.returnRecord()); %><br>    
<% } %>
</p>
</body>
</html>

DelimitedDataFile.Java
import Java.io.*;
import Java.util.StringTokenizer;

public class DelimitedDataFile
{
private String currentRecord = null;
private BufferedReader file;
private String path;
private StringTokenizer token;

//创建文件对象
public DelimitedDataFile()
{
     file = new BufferedReader(new InputStreamReader(System.in),1);
}

public DelimitedDataFile(String filePath) throws FileNotFoundException
{
     path = filePath;
     file = new BufferedReader(new FileReader(path));
}
  
//设置文件路径
  public void setPath(String filePath)
  {
     path = filePath;
try {
file = new BufferedReader(new FileReader(path));
} catch (FileNotFoundException e) {
      System.out.println("file not found");
     }
}

//得到文件路径
public String getPath()
{
   return path;
}

//关闭文件
public void fileClose() throws IOException
{
   file.close();
}

//读取下一行记录,若没有则返回-1
public int nextRecord()
{
     int returnInt = -1;
     try {
     currentRecord = file.readLine();
     } catch (IOException e)
     {
     System.out.println("readLine problem, terminating.");
     }
     if (currentRecord == null)
     returnInt = -1;
     else
     {
      token = new StringTokenizer(currentRecord);
     returnInt = token.countTokens();
     }
     return returnInt;
}

    //以字符串的形式返回整个记录
public String returnRecord()
{
return currentRecord;
}
}

1 2 3 4 5 6  下一页

■ 相关内容
 JSP与Servlet
 如何在Linux下建立JSP开发环境?
 Tomcat环境的建立
 JSWDK环境的建立
感谢 访问天极网,如果您觉得该文章涉及版权问题,请看这里!