日期:2014-05-16  浏览次数:20293 次

JSP中读文件和写文件的例子
下面就讨论一下JSP中读文件和写文件的例子,其实从上面实现中你可以看到,很简单的就是将生成的静态文件删除即可,至于什么时候删除,要看你的需求了。

   读文件的例子
***************************************************
<%@ page contentType="text/html;charset=gb2312"%>
<%
//变量声明\
java.lang.String strFileName; //文件名\r
java.io.File objFile; //文件对象\r
java.io.FileReader objFileReader; //读文件对象\r
char[] chrBuffer = new char[10]; //缓冲\r
int intLength; //实际读出的字符数(一个中文为一个字符)

//设置待读文件名\r
strFileName = "d:\\test.txt";

//创建文件对象\r
objFile = new java.io.File(strFileName);

//判断文件是否存在
if(objFile.exists()){//文件存在
  //创建读文件对象\r
  objFileReader = new java.io.FileReader(objFile);

  //读文件内容
  while((intLength=objFileReader.read(chrBuffer))!=-1){
    //输出\r
    out.write(chrBuffer,0,intLength);
  }

  //关闭读文件对象\r
  objFileReader.close();
}
else{//文件不存在
  out.println("下列文件不存在:"+strFileName);
}
%>
**************************************************
写文件的例子
**************************************************
使用PrintWriter对象即可写Text文件。

请参考以下示例:

<%@ page import="java.io.*" %>
<%
String str = "print me";
//always give the path from root. This way it almost always works.
String nameOfTextFile = "/usr/anil/imp.txt";
try {
  PrintWriter pw = new PrintWriter(new FileOutputStream(nameOfTextFile));
  pw.println(str);
  //clean up
  pw.close();
} catch(IOException e) {
  out.println(e.getMessage());
}
%>

现在,打开imp.txt加以查看,字符串"print me"应该已经写入。

还有另一种方法,使用IN16标记库的file tag,可参考http://sourceforge.net/project /?group_id=1282.
其示例的语法为:
<ext:file action="write|append|create|copy|move|delete|
rename|read" from="<%= myfilename %>">