似水流年
Huhu'Blog
BlogJava
首頁
新隨筆
聯系
聚合
管理
隨筆-26 評論-13 文章-46 trackbacks-0
Java 中對文件的讀寫操作之比較
Java 中對文件的讀寫操作之比較
一.在 JDK 1.0 中,通常是用 InputStream & OutputStream 這兩個基類來進行讀寫操作的。
InputStream 中的 FileInputStream 類似一個文件句柄,通過它來對文件進行操作,類似的,在
OutputStream 中我們有 FileOutputStream 這個對象。
用FileInputStream 來讀取數據的常用方法是:
FileInputStream fstream = new FileInputStream(args[0]);
DataInputStream in = new DataInputStream(fstream);
用 in.readLine() 來得到數據,然后用 in.close() 關閉輸入流。
完整代碼見 Example 1。
用FileOutputStream 來寫入數據的常用方法是:
FileOutputStream out out = new FileOutputStream("myfile.txt");
PrintStream p = new PrintStream( out );
用 p.println() 來寫入數據,然后用 p.close() 關閉輸入。
完整代碼見 Example 2。
二.在 JDK 1.1中,支持兩個新的對象 Reader & Writer, 它們只能用來對文本文件進行操作,而
JDK1.1中的 InputStream & OutputStream 可以對文本文件或二進制文件進行操作。
用FileReader 來讀取文件的常用方法是:
FileReader fr = new FileReader("mydata.txt");
BufferedReader br = new BufferedReader(fr);
用 br.readLing() 來讀出數據,然后用br.close() 關閉緩存,用fr.close() 關閉文件。
完整代碼見 Example 3。
用 FileWriter 來寫入文件的常用方法是:
FileWriter fw = new FileWriter("mydata.txt");
PrintWriter out = new PrintWriter(fw);
在用out.print 或 out.println 來往文件中寫入數據,out.print 和 out.println的唯一區別是后者寫
入數據或會自動開一新行。寫完后要記得 用out.close() 關閉輸出,用fw.close() 關閉文件。
完整代碼見 Example 4。
-------------------------------------------------------------- following is the source code of examples------------------------------------------------------
Example
1
:
//
FileInputDemo
//
Demonstrates FileInputStream and DataInputStream
import java.io.
*
;
class
FileInputDemo
{
public
static
void
main(String args[])
{
//
args.length is equivalent to argc in C
if
(args.length
==
1
)
{
try
{
//
Open the file that is the first command line parameter
FileInputStream fstream
=
new
FileInputStream(args[
0
]);
//
Convert our input stream to a DataInputStream
DataInputStream
in
=
new
DataInputStream(fstream);
//
Continue to read lines while there are still some left to read
while
(
in
.available()
!=
0
)
{
//
Print file line to screen
System.
out
.println (
in
.readLine());
}
in
.close();
}
catch
(Exception e)
{
System.err.println(
"
File input error
"
);
}
}
else
System.
out
.println(
"
Invalid parameters
"
);
}
}
Example 2:
//
FileOutputDemo
//
Demonstration of FileOutputStream and PrintStream classes
import java.io.
*
;
class
FileOutputDemo
{
public
static
void
main(String args[])
{
FileOutputStream
out
;
//
declare a file output object
PrintStream p;
//
declare a print stream object
try
{
//
connected to "myfile.txt"
out
=
new
FileOutputStream(
"
myfile.txt
"
);
//
Connect print stream to the output stream
p
=
new
PrintStream(
out
);
p.println (
"
This is written to a file
"
);
p.close();
}
catch
(Exception e)
{
System.err.println (
"
Error writing to file
"
);
}
}
}
Example 3:
//
FileReadTest.java
//
User FileReader in JDK1.1 to read a file
import java.io.
*
;
class
FileReadTest
{
public
static
void
main (String[] args)
{
FileReadTest t
=
new
FileReadTest();
t.readMyFile();
}
void
readMyFile()
{
String record
=
null
;
int
recCount
=
0
;
try
{
FileReader fr
=
new
FileReader(
"
mydata.txt
"
);
BufferedReader br
=
new
BufferedReader(fr);
record
=
new
String();
while
((record
=
br.readLine())
!=
null
)
{
recCount
++
;
System.
out
.println(recCount
+
"
:
"
+
record);
}
br.close();
fr.close();
}
catch
(IOException e)
{
System.
out
.println(
"
Uh oh, got an IOException error!
"
);
e.printStackTrace();
}
}
}
Example 4:
//
FileWriteTest.java
//
User FileWriter in JDK1.1 to writer a file
import java.io.
*
;
class
FileWriteTest
{
public
static
void
main (String[] args)
{
FileWriteTest t
=
new
FileWriteTest();
t.WriteMyFile();
}
void
WriteMyFile()
{
try
{
FileWriter fw
=
new
FileWriter(
"
mydata.txt
"
);
PrintWriter
out
=
new
PrintWriter(fw);
out
.print(“hi,
this
will be wirte into the file
!
”);
out
.close();
fw.close();
}
catch
(IOException e)
{
System.
out
.println(
"
Uh oh, got an IOException error!
"
);
e.printStackTrace();
}
}
}
posted on 2005-06-23 17:46
似水流年
閱讀(902)
評論(2)
編輯
收藏
所屬分類:
Java
評論:
#
re: Java 中對文件的讀寫操作之比較 2007-09-19 17:08 |
f
gffff
回復
更多評論
#
re: Java 中對文件的讀寫操作之比較
2007-09-19 17:08 |
f
gfb
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
<
2005年6月
>
日
一
二
三
四
五
六
29
30
31
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
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆分類
appfuse(2)
Java(1)
JS/HTML/CSS(6)
JSP/Servlet (13)
SQL(2)
Struts(1)
Windows
Xdoclet(1)
隨筆檔案
2006年4月 (1)
2005年11月 (3)
2005年10月 (1)
2005年6月 (21)
文章分類
Ant(1)
Java(9)
Jbuilder(1)
JS/HTML/CSS (2)
JSP/Servlet (11)
Oracle(10)
Others(4)
SQL(1)
Struts(2)
tomcat(1)
Windows(2)
XML(2)
文檔(1)
文章檔案
2006年5月 (1)
2006年4月 (15)
2006年2月 (2)
2006年1月 (1)
2005年12月 (1)
2005年11月 (2)
2005年9月 (2)
2005年8月 (3)
2005年7月 (3)
2005年6月 (16)
database
oracle 學習
Java
Hibernate中文手冊
Jdon
Jsp
BEA dev2dev
CnJsp-中國jsp技術網站
IBM中國-xml教程
java開源大全
jsptags.com
JSP技術參考目錄,尤其注重于標簽庫
J道:Java和J2EE解決之道
The Jakarta Project 大本營
w3schools
共創軟件聯盟
漢化問題
游戲開發資源網
opencms
opencms新聞問題
不能上傳任何類型的文件
other
合氣道視頻
搜索
最新評論
1.?re: Javascript回車換行
薩比得上
--大三
2.?re: struts html:multibox標簽(轉載)
Good!
--何楊
3.?re: 轉義字符\的替換[未登錄]
非常感謝 正是我需要的。。。
--飛雪
4.?re: 讓tomcat支持中文Url傳遞
URIEncoding="GBK"
最好還是用utf-8
默認情況下,瀏覽器采用UTF-8對鏈接進行編碼
--fyxruben
5.?re: Jstl驗證用戶登錄及session控制[未登錄]
sdfsdf
--sdfsd
閱讀排行榜
1.?讓tomcat支持中文Url傳遞(4651)
2.?Jstl驗證用戶登錄及session控制(3648)
3.?Javascript回車換行(3300)
4.?DisplayTag應用實踐(2255)
5.?Jstl的函數庫(1846)
評論排行榜
1.?Jstl驗證用戶登錄及session控制(3)
2.?讓tomcat支持中文Url傳遞(2)
3.?Java 中對文件的讀寫操作之比較(2)
4.?Jstl的函數庫(1)
5.?Javascript回車換行(1)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 似水流年
主站蜘蛛池模板:
亚洲高清不卡视频
|
久久噜噜噜久久亚洲va久
|
一级毛片aaaaaa免费看
|
亚洲片一区二区三区
|
韩国亚洲伊人久久综合影院
|
免费看大黄高清网站视频在线
|
亚洲一区二区三区精品视频
|
亚洲欧洲免费无码
|
亚洲日本乱码在线观看
|
WWW免费视频在线观看播放
|
亚洲日韩在线观看免费视频
|
国产成人高清精品免费观看
|
国产亚洲日韩在线三区
|
日本高清不卡aⅴ免费网站
|
亚洲国产人成网站在线电影动漫
|
韩日电影在线播放免费版
|
中文字幕亚洲综合久久菠萝蜜
|
中文字幕无线码中文字幕免费
|
久久综合日韩亚洲精品色
|
久久久久久精品免费看SSS
|
亚洲熟妇丰满xxxxx
|
免费乱码中文字幕网站
|
97在线免费视频
|
亚洲性无码av在线
|
国产一区二区三区免费视频
|
香蕉免费在线视频
|
亚洲欧洲日本天天堂在线观看
|
日韩高清免费在线观看
|
精品久久久久久无码免费
|
中文字幕在线观看亚洲
|
国产国产人免费人成免费视频
|
一级做a爰性色毛片免费
|
亚洲最大黄色网站
|
国产一级特黄高清免费大片
|
中文无码成人免费视频在线观看
|
亚洲精品成人久久
|
亚洲国产成人爱av在线播放
|
最近2019中文字幕免费大全5
|
亚洲第一成年免费网站
|
免费特级黄毛片在线成人观看
|
一级毛片高清免费播放
|