用JAVA实现的类FileOperate,包括文件建立,查询,删除等。。
文件的建立/检查与删除
目录的建立/检查与删除
<%
@ 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.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
>
<
B
>
读取所有的文件数据
</
B
>
<
ccid_nobr
>
<
table width
=
"
400
"
border
=
"
1
"
cellspacing
=
"
0
"
cellpadding
=
"
2
"
bordercolorlight
=
"
black
"
bordercolordark
=
"
#FFFFFF
"
align
=
"
center
"
>
<
tr
>
<
td bgcolor
=
"
e6e6e6
"
class
=
"
code
"
style
=
"
font-size:9pt
"
>
<
pre
><
ccid_code
>
<%
@ 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
>