好好学习,好好工作,好好生活
终身学习,努力赚钱,健康愉快 注意:转发本blog文章请注明文章出处(http://www.blogjava.net/lusm)谢谢支持!
首页
新随笔
联系
聚合
管理
随笔 - 303 文章 - 883 trackbacks - 0
<
2007年3月
>
日
一
二
三
四
五
六
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
欢迎光临!
闲聊
QQ:
1074961813
随笔分类
(357)
Ajax、Flex(6)
Blog公告(3)
c/c++/C#/pasic/vb/php/asp(.net)/win-cgi/xml...(53)
database(13)
j2se/j2ee/j2me(142)
kernel (16)
linux configuration(6)
Listening 所有的声音都是音乐(1)
matlab~~~值得一学的工具(2)
network(5)
SUN OS(8)
unix program(10)
书法(欲罢不能,神魂颠倒的美)(4)
入侵反入侵(4)
关于搜索引擎
哲学世界(8)
多媒体开发(4)
嵌入式开发(14)
常用资源(19)
汇编 *asm/at&t ....(1)
科学百科(4)
算法(2)
编程问题(4)
计算机病毒反病毒学(4)
身体锻炼(5)
软件 & 书籍 推荐(19)
我管理的群
j2ee
struts Hibernate spring等学习 基础不扎实 可以跳到j2se学习群 37486623 请先退出该群
j2se(37486623)
j2se学习 若人满请加到12999758 学完的可以跳到j2ee学习群 37486483 请先退出该群
java || .net(50982019)
java & .net都是热门的web技术 当然可以一起学啦 欢迎前来探讨技术 解决问题
java 2(35917927)~~~请加这个
该群在发展中,踢人是经常的事情
java(12999758)
学完的可以跳到j2ee学习群 37486483 请先退出该群
Java应用(14821632)
学无止境 好好努力! 讨论 web 技术 、 Java (j2se j2ee) 、C/S编程 、 数据库 。。。。
Linux C、C++(33318370)
将 Linux 和 C、C++ 编程进行到底!
Think in java(16705375)~~~请加这个
《Think in java》 我们的最爱
国学(111230500)
历史、宗教、哲学、气功、传统技艺,欢迎加入,知无不言,言无不尽!
文祠实习群(32644370)
07年文祠实习群
驱动开发群(27054589)
arm || intel ...platform Windows || Linux device driver development 有一定基础方可加入
公共blog
n维空间
Email : java3d@126.com 群 : 12999758
参与管理的论坛
ineedyou
ourlinux
好友的blog
lyforever
Resplendent技术blog
java、VC和嵌入开发
一梦如是
c/c++/windows/mfc
三驾马车
仙人指路
弄VC和汇编的家伙
吕鑫磊
吴卫-3D工作室
好好学习,天天向上,态度决定一切
同学的blog
廖益花
琦琦
北京的朋友,和我一起创建了不少群 呵呵!
菜菜C++
VC++
陈敏师兄
霍霍
一个和我差不多大的北京女孩
我的其他blog
kernel world(csdn)
寻寻觅觅—— C语言
我的世界 不被打扰
虚拟世界-自由自在
音乐在身边
朋友的网站
china1996.cn
ourlinux.org
ourlinux.org
笑话大全
累了的时候啦 可以寻下开心
搜索
最新评论
1. re: Windows Embedded CE 6.0 下载地址和序列号
评论内容较长,点击标题查看
--码无止茎
2. re: Caused by: java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
评论内容较长,点击标题查看
--一
3. re: linux0.11内核编程入门全集视频下载
博主,看不了啊,方便的话发一份到ren1198997229@163.com 谢谢( ̄▽ ̄)"
--renchunhui
4. re: JVM 、JDK(c/c++)源代码下载[未登录]
还可以吧
--刘勇
5. re: linux0.11内核编程入门全集视频下载
视频怎么下不了啊
--MSM
[转] JAVA文件操作大全
from :
http://wjxk.blog.sohu.com/15362196.html
文件的建立/检查与删除
<%
@ 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
>
<
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
+
"
fileinct.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
>
地震让大伙知道:居安思危,才是生存之道。
posted on 2007-03-28 16:13
小寻
阅读(361)
评论(3)
编辑
收藏
所属分类:
j2se/j2ee/j2me
FeedBack:
#
re: [转] JAVA文件操作大全 2007-04-02 13:27
皿里
[quote]fr.skip(2);//跳过2个字节
int c=fr.read();//读取一个字节
[/quote]
这里的方法skip(int n)里的参数n应该是指跳过的字符数,不是字节数!FileReader的read方法是读一个字符的数据,不是一个字节!
回复
更多评论
#
re: [转] JAVA文件操作大全 2007-04-03 10:04
幻想~@@~
谢谢指正! 呵呵,下次发表,如有需要,可选择高级回复方式;
下次转资料前一定会仔细阅读一次的;谢谢师兄支持!
参考资料:
java.lang.Object
|_ java.io.Reader
The url
java.lang.Object
|_java.io.Reader
|_java.io.InputStreamReader
|_java.io.FileReader
The url
网上找的参考程序:
public
String read(File file)
throws
IOException
{
int
length
=
(
int
)file.length();
//
这里的文件不能太大, 太大
//
的话就不要 一次性读到内存中.
//
起码不能超过int的最大值.
char
[] context
=
new
char
[length];
//
可见的、该方法在这里
//
读的是字符;
FileReader reader
=
new
FileReader(file);
reader.read(context);
reader.close();
return
new
String(context );
}
回复
更多评论
#
re: [转] JAVA文件操作大全
2007-04-03 10:08
lusm
看了发该文还不清楚者:
由于本blog这方面内容颇多,
所以本人为您找来另一个文章
<Java文件操作详解可运行版>
rul :
http://www.javaresearch.org/article/54605.htm
回复
更多评论
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
[原创]浅析JACOB
Struts && Spring 登陆实验
[分页]之 servlet分页
一个通用的Hibernate DAO
JSF下拉列表简单实现视频及代码
在 arm920T 上使用 java 杂杂
spring整合hibernate提供代码下载
小小hibernate3.1代码
小小spring2.0代码扩充
小小的spring2.0例子