文件属性的取得
<%@ 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>
一行一行读取数据
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.io.* "%>
<html>
<head>
<title> 文件读取 </title>
</head>
<body>
<%
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 + " <br> ");//输出从文件中读取的数据
Line=br.readLine();//从文件中继续读取一行数据
}
br.close();//关闭BufferedReader对象
fr.close();//关闭文件
%>
</body>
</html>
略过文件中的字符不读取
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.io.* "%>
<html>
<head>
<title> 略过字节不读取 </title>
</head>
<body>
<%
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();
%>
</body>
</html>
将数据写入文件
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.io.* "%>
<html>
<head>
<title> 将数据写入文件 </title>
</head>
<body>
<%
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> ");
br.close();//关闭BufferedReader对象
fr.close();
%>
</body>
</html>
将写入文件的数据分行
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.io.* "%>
<html>
<head>
<title> 将写入文件的数据分行 </title>
</head>
<body>
<%
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( "写入文件内容为: <br> ");
FileReader fr=new FileReader(path + "\\WriteData.txt ");
BufferedReader br=new BufferedReader(fr);
String Line=br.readLine();//读取一行数据
while(Line!=null){
out.println(Line + " <br> ");
Line=br.readLine();
}
fr.close();
%>
</body>
</html>
如何将数据追加写入到文件
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.io.* "%>
<html>
<head>
<title> 将写入文件的数据分行 </title>
</head>
<body>
<%
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( "写入文件内容为: <br> ");
FileReader fr=new FileReader(path + "\\WriteData.txt ");
BufferedReader br=new BufferedReader(fr);//读取文件的BufferedRead对象
String Line=br.readLine();
while(Line!=null){
out.println(Line + " <br> ");
Line=br.readLine();
}
fr.close();//关闭文件
%>
</body>
</html>
JAVA IO
原创
©著作权归作者所有:来自51CTO博客作者mb64216b23e45d0的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java IO - 源码: InputStream
本文主要从JDK 11 源码角度分析InputStream。
Java IO/NIO/AIO -
Java NIO - IO多路复用详解
本文主要对IO多路复用,Ractor模型以及Java NIO对其的支持。
Java IO/NIO/AIO -
java IO流:IO模型
UNIX 系统下, IO 模型一共有 5 种:
java 非阻塞 UNIX 多路复用