【 tulaoshi.com - Java 】
                             
                               文件操作是网站编程的重要内容之一,asp关于文件操作讨论的已经很多了,让我们来看看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 bean文件源代码 
//导入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; 
} 
}