• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

纯 jsp 操作服务器上的文本文件 [1]

发布: 2007-7-01 18:47 | 作者: admin | 来源: | 查看: 12次 | 进入软件测试论坛讨论

领测软件测试网

本文内的 jsp 程序都是按功能自己成立一个独立的程序,大家要使用什么功能,自己组合吧。

文件的建立/检查与删除

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<html>
<head>
<title>文件的建立、检查与删除</title>
</head>
<body>
<%
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.*"%>
<html>
<head>
<title>目录的建立/检查与删除</title>
</head>
<body>
<%
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目录不存在,已建立");
}
%>
</body>
</html>

如何在JSP中处理虚拟目录

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<html>
<head>
<title>JSP中如何处理虚拟目录</title>
</head>
<body>
取得虚拟目录对应的磁盘路径<br>
Web站点主目录的位置为<font color=#ff0000><%=request.getRealPath("/")%></font><br>
JSP网页所在的目录位置<font color=#ff0000><%=request.getRealPath("./")%></font><br>
JSP网页所在目录上一层目录的位置<font color=#ff0000><%=request.getRealPath("../")%></font><br>
</body>
</html>

文件属性的取得

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.util.Date,java.io.*"%>
<html>
<head>
<title>文件属性的取得</title>
</head>
<body>
<%
String path=request.getRealPath("/");
File f=new File(path,"ReadData.txt");
if(f.exists()){
 %>
 <%=f.getName()%>的属性如下:<br><br>
 文件长度为:<%=f.length()%>
 <%=f.isFile()?"是文件":"不是文件"%><br>
 <%=f.isDirectory()?"是目录":"不是目录"%><br>
 <%=f.canRead()?"可读取":"不可读取"%><br>
 <%=f.canWrite()?"可写入":"不可写入"%><br>
 <%=f.isHidden()?"是隐藏文件":"不是隐藏文件"%><br>
 文件的最后修改日期为:<%=new Date(f.lastModified())%><br>
 <%
}else{
 f.createNewFile();//在当前目录下建立一个名为ReaData.txt的文件
 %>
 <%=f.getName()%>的属性如下:<br><br>
 文件长度为:<%=f.length()%>
 <%=f.isFile()?"是文件":"不是文件"%><br>
 <%=f.isDirectory()?"是目录":"不是目录"%><br>
 <%=f.canRead()?"可读取":"不可读取"%><br>
 <%=f.canWrite()?"可写入":"不可写入"%><br>
 <%=f.isHidden()?"是隐藏文件":"不是隐藏文件"%><br>
 文件的最后修改日期为:<%=new Date(f.lastModified())%><br>
 <%
}
%>
</body>
</html>

取出目录中文件的方法

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<html>
<head>
<title>取出目录中文件的方法--列出目录中的文件</title>
</head>
<body>
<%
String path=request.getRealPath("/");
File d=new File(path);//建立当前目录中文件的File对象
File list[]=d.listFiles();//取得代表目录中所有文件的File对象数组
out.println("<font color=#ff0000>" + path + "目录下的文件:</font><br>");
for(int i=0;i<list.length;i++){
 if(list[i].isFile()){
  out.println(list[i].getName() + "<br>");
 }
}
out.println("<br><font color=#ff0000>" + path + "目录下的目录:</font><br>");
for(int i=0;i<list.length;i++){
 if(list[i].isDirectory()){
  out.println(list[i].getName() + "<br>");
 }
}
%>
</body>
</html>

判断是否为空白文件

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<html>
<head>
<title>判断是否为空白文件</title>
</head>
<body>
<%
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文件中没有数据<br>");
}else{
 out.println("AtEnd.txt文件中有数据");
}
fr.close();
%>
</body>
</html>

读取所有的文件数据

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*,java.lang.*"%>
<html>
<head>
<title>读取所有的文件数据</title>
</head>
<body>
<%
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("<br>");//输出分行标签
  fr.skip(1);//略过一个字符
  //c=fr.read();//读取一个字符
 }
}
fr.close();
%>
</body>
</html>

 

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网