文件的建立/检查与删除 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>文件的建立、检查与删除 <% String path=request.getRealPath(""); //out.println(path); File f=new File(path,"File.txt"); //out.println(f); //out.println(f.exists()); if(f.exists()){ //检查File.txt是否存在 f.delete();//删除File.txt文件 out.println(path +"\\File.txt 存在,已删除。"); }else{ f.createNewFile();//在当前目录下建立一个名为File.txt的文件 out.println(path +"\\File.txt 不存在,已建立。");//输出目前所在的目录路径 } %>
目录的建立/检查与删除 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>目录的建立/检查与删除 <% String path=request.getRealPath(""); path=path +"\\Sub";//将要建立的目录路径 File d=new File(path);//建立代表Sub目录的File对象,并得到它的一个引用 if(d.exists()){ //检查Sub目录是否存在 d.delete(); out.println("Sub目录存在,已删除"); }else{ d.mkdir();//建立Sub目录 out.println("Sub目录不存在,已建立"); } %>
如何在JSP中处理虚拟目录 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>JSP中如何处理虚拟目录 取得虚拟目录对应的磁盘路径 Web站点主目录的位置为<%=request.getRealPath("/")%> JSP网页所在的目录位置<%=request.getRealPath("./")%> JSP网页所在目录上一层目录的位置<%=request.getRealPath("../")%>
文件属性的取得 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.util.Date,java.io.*"%>文件属性的取得 <% String path=request.getRealPath("/"); File f=new File(path,"ReadData.txt"); if(f.exists()){ %> <%=f.getName()%>的属性如下: 文件长度为:<%=f.length()%> <%=f.isFile()?"是文件":"不是文件"%> <%=f.isDirectory()?"是目录":"不是目录"%> <%=f.canRead()?"可读取":"不可读取"%> <%=f.canWrite()?"可写入":"不可写入"%> <%=f.isHidden()?"是隐藏文件":"不是隐藏文件"%> 文件的最后修改日期为:<%=newDate(f.lastModified())%> <% }else{ f.createNewFile();//在当前目录下建立一个名为ReaData.txt的文件 %> <%=f.getName()%>的属性如下: 文件长度为:<%=f.length()%> <%=f.isFile()?"是文件":"不是文件"%> <%=f.isDirectory()?"是目录":"不是目录"%> <%=f.canRead()?"可读取":"不可读取"%> <%=f.canWrite()?"可写入":"不可写入"%> <%=f.isHidden()?"是隐藏文件":"不是隐藏文件"%> 文件的最后修改日期为:<%=newDate(f.lastModified())%> <% } %>
取出目录中文件的方法 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>取出目录中文件的方法--列出目录中的文件 <% String path=request.getRealPath("/"); File d=new File(path);//建立当前目录中文件的File对象 File list[]=d.listFiles();//取得代表目录中所有文件的File对象数组 out.println(""+ path +"目录下的文件:"); for(int i=0;i.isFile()){ out.println(list .getName() +""); } } out.println(""+ path +"目录下的目录:"); for(int i=0;i .isDirectory()){ out.println(list .getName() +""); } } %>
判断是否为空白文件 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>判断是否为空白文件 <% String path=request.getRealPath("/"); out.println(path); FileReader fr=new FileReader(path +"\\AtEnd.txt");//建立FileReader对象,并实例化为fr //对FileReader类生成的对象使用read()方法,可以从字符流中读取下一个字符。 if(fr.read()==-1)//判断是否已读到文件的结尾 { out.print("AtEnd.txt文件中没有数据"); }else{ out.println("AtEnd.txt文件中有数据"); } fr.close(); %>
读取所有的文件数据 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*,java.lang.*"%>读取所有的文件数据 <% String path=request.getRealPath("."); FileReader fr=new FileReader(path +"\\ReadData.txt"); //关键在于读取过程中,要判断所读取的字符是否已经到了文件的末尾,并且这个字符是不是文件中的断行符,即判断该字符值是否为13。 int c=fr.read();//从文件中读取一个字符 //判断是否已读到文件结尾 while(c!=-1){ out.print((char)c);//输出读到的数据 c=fr.read();//从文件中继续读取数据 if(c==13){ //判断是否为断行字符 out.print("");//输出分行标签 fr.skip(1);//略过一个字符 //c=fr.read();//读取一个字符 } } fr.close(); %>
一行一行读取数据 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>文件读取 <% String path=request.getRealPath("");//取得当前目录的路径 FileReader fr=new FileReader(path +"\\file\\inc\\t.txt");//建立FileReader对象,并实例化为fr BufferedReader br=new BufferedReader(fr);//建立BufferedReader对象,并实例化为br String Line=br.readLine();//从文件读取一行字符串 //判断读取到的字符串是否不为空 while(Line!=null){ out.println(Line +"");//输出从文件中读取的数据 Line=br.readLine();//从文件中继续读取一行数据 } br.close();//关闭BufferedReader对象 fr.close();//关闭文件 %>
略过文件中的字符不读取 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>略过字节不读取 <% String path=request.getRealPath("."); FileReader fr=new FileReader(path +"\\ReadData.txt"); fr.skip(2);//跳过2个字节 int c=fr.read();//读取一个字节 while(c!=-1){ out.print((char)c); c=fr.read(); } fr.close(); %>
将数据写入文件 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>将数据写入文件 <% String path=request.getRealPath("."); FileWriter fw=new FileWriter(path +"\\WriteData.txt");//建立FileWriter对象,并实例化fw //将字符串写入文件 fw.write("大家好!"); fw.write("本书是《JSP编程技巧》"); fw.write("请多多指教!"); fw.write("email:stride@sina.com"); fw.close(); FileReader fr=new FileReader(path +"\\WriteData.txt"); BufferedReader br=new BufferedReader(fr);//建立BufferedReader对象,并实例化为br String Line=br.readLine(); //读取一行数据 out.println(Line +""); br.close();//关闭BufferedReader对象 fr.close(); %>
将写入文件的数据分行 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>将写入文件的数据分行 <% String path=request.getRealPath("."); FileWriter fw=new FileWriter(path +"\\WriteData.txt"); BufferedWriter bw=new BufferedWriter(fw); bw.write("大家好!"); bw.write("本书是《JSP编程技巧》。"); bw.newLine();//断行 bw.write("请多多指教!"); bw.newLine();//断行 bw.write("email: stride@sina.com"); bw.flush();//将数据更新至文件 fw.close();//关闭文件流 out.println("写入文件内容为:"); FileReader fr=new FileReader(path +"\\WriteData.txt"); BufferedReader br=new BufferedReader(fr); String Line=br.readLine();//读取一行数据 while(Line!=null){ out.println(Line +""); Line=br.readLine(); } fr.close(); %>
如何将数据追加写入到文件 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%>将写入文件的数据分行 <% String path=request.getRealPath("."); RandomAccessFile rf=new RandomAccessFile(path +"\\WriteData.txt","rw");//定义一个类RandomAccessFile的对象,并实例化 rf.seek(rf.length());//将指针移动到文件末尾 rf.writeBytes("\nAppend a line to the file!"); rf.close();//关闭文件流 out.println("写入文件内容为:"); FileReader fr=new FileReader(path +"\\WriteData.txt"); BufferedReader br=new BufferedReader(fr);//读取文件的BufferedRead对象 String Line=br.readLine(); while(Line!=null){ out.println(Line +""); Line=br.readLine(); } fr.close();//关闭文件 %>