日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

文本文件 java_简单的用java实现读/写文本文件的示例

發(fā)布時(shí)間:2023/11/27 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 文本文件 java_简单的用java实现读/写文本文件的示例 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

簡(jiǎn)單的用java實(shí)現(xiàn)讀/寫(xiě)文本文件的示例

更新時(shí)間:2008年07月26日 13:09:26 ? 作者:

同時(shí)也展示了如果從輸入流中讀出來(lái)內(nèi)容寫(xiě)入輸出流中(僅限文本流)

三個(gè)例子可以獨(dú)立存在,所以根據(jù)需要只看其中一個(gè)就行了。

/*

*?簡(jiǎn)單的讀/寫(xiě)文本文件的示例

*?這里包含了三個(gè)例子,即

*?1.?將文件讀入到內(nèi)存(這里是StringBuffer)的例子

*?2.?將內(nèi)容中的文本寫(xiě)到文件

*?3.?將一個(gè)文件的內(nèi)容讀出來(lái)寫(xiě)入另一個(gè)文件中

*????同時(shí)也展示了如果從輸入流中讀出來(lái)內(nèi)容寫(xiě)入輸出流中(僅限文本流)

*?三個(gè)例子可以獨(dú)立存在,所以根據(jù)需要只看其中一個(gè)就行了。

*/

import?java.io.BufferedReader;

import?java.io.FileInputStream;

import?java.io.FileOutputStream;

import?java.io.IOException;

import?java.io.InputStream;

import?java.io.InputStreamReader;

import?java.io.OutputStream;

import?java.io.OutputStreamWriter;

import?java.io.PrintStream;

import?java.io.PrintWriter;

public?final?class?AccessTextFile?{

/**

*?1.?演示將流中的文本讀入一個(gè)?StringBuffer?中

*?@throws?IOException

*/

public?void?readToBuffer(StringBuffer?buffer,?InputStream?is)

throws?IOException?{

String?line;????????//?用來(lái)保存每行讀取的內(nèi)容

BufferedReader?reader?=?new?BufferedReader(new?InputStreamReader(is));

line?=?reader.readLine();???????//?讀取第一行

while?(line?!=?null)?{??????????//?如果?line?為空說(shuō)明讀完了

buffer.append(line);????????//?將讀到的內(nèi)容添加到?buffer?中

buffer.append("\n");????????//?添加換行符

line?=?reader.readLine();???//?讀取下一行

}

}

/**

*?2.?演示將?StringBuffer?中的內(nèi)容讀出到流中

*/

public?void?writeFromBuffer(StringBuffer?buffer,?OutputStream?os)?{

//?用?PrintStream?可以方便的把內(nèi)容輸出到輸出流中

//?其對(duì)象的用法和?System.out?一樣

//?(System.out?本身就是?PrintStream?對(duì)象)

PrintStream?ps?=?new?PrintStream(os);

ps.print(buffer.toString());

}

/**

*?3*.?從輸入流中拷貝內(nèi)容到輸入流中

*?@throws?IOException

*/

public?void?copyStream(InputStream?is,?OutputStream?os)?throws?IOException?{

//?這個(gè)讀過(guò)過(guò)程可以參閱?readToBuffer?中的注釋

String?line;

BufferedReader?reader?=?new?BufferedReader(new?InputStreamReader(is));

PrintWriter?writer?=?new?PrintWriter(new?OutputStreamWriter(os));

line?=?reader.readLine();

while?(line?!=?null)?{

writer.println(line);

line?=?reader.readLine();

}

writer.flush();?????//?最后確定要把輸出流中的東西都寫(xiě)出去了

//?這里不關(guān)閉?writer?是因?yàn)?os?是從外面?zhèn)鬟M(jìn)來(lái)的

//?既然不是從這里打開(kāi)的,也就不從這里關(guān)閉

//?如果關(guān)閉的?writer,封裝在里面的?os?也就被關(guān)了

}

/**

*?3.?調(diào)用?copyStream(InputStream,?OutputStream)?方法拷貝文本文件

*/

public?void?copyTextFile(String?inFilename,?String?outFilename)

throws?IOException?{

//?先根據(jù)輸入/輸出文件生成相應(yīng)的輸入/輸出流

InputStream?is?=?new?FileInputStream(inFilename);

OutputStream?os?=?new?FileOutputStream(outFilename);

copyStream(is,?os);?????//?用?copyStream?拷貝內(nèi)容

is.close();?//?is?是在這里打開(kāi)的,所以需要關(guān)閉

os.close();?//?os?是在這里打開(kāi)的,所以需要關(guān)閉

}

public?static?void?main(String[]?args)?throws?IOException?{

int?sw?=?1;?????//?三種測(cè)試的選擇開(kāi)關(guān)

AccessTextFile?test?=?new?AccessTextFile();

switch?(sw)?{

case?1:?//?測(cè)試讀

{

InputStream?is?=?new?FileInputStream("E:\\test.txt");

StringBuffer?buffer?=?new?StringBuffer();

test.readToBuffer(buffer,?is);

System.out.println(buffer);?????//?將讀到?buffer?中的內(nèi)容寫(xiě)出來(lái)

is.close();

break;

}

case?2:?//?測(cè)試寫(xiě)

{

StringBuffer?buffer?=?new?StringBuffer("Only?a?test\n");

test.writeFromBuffer(buffer,?System.out);

break;

}

case?3:?//?測(cè)試拷貝

{

test.copyTextFile("E:\\test.txt",?"E:\\r.txt");

}

break;

}

}

}

相關(guān)文章

hibernate validator提供了一套比較完善、便捷的驗(yàn)證實(shí)現(xiàn)方式。下面小編給大家介紹下springboot使用hibernate validator校驗(yàn)方式,感興趣的朋友一起看看吧2018-01-01

這篇文章主要介紹了Eclipse最新版使用過(guò)程中遇到的問(wèn)題總結(jié)的相關(guān)資料,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09

這篇文章主要給大家介紹了關(guān)于如何利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12

這篇文章主要介紹了java讀取properties配置文件的方法,涉及java操作properties配置文件的相關(guān)技巧,需要的朋友可以參考下2015-05-05

這篇文章主要介紹了你應(yīng)該知道的這些Mybatis-Plus使用技巧(小結(jié)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08

這篇文章主要介紹了Java編程中JDialog窗體的用法及實(shí)例,描述了其特征,具有一定參考價(jià)值,需要的朋友可以了解下。2017-09-09

這篇文章主要給大家介紹了關(guān)于Spring Boot中@ConditionalOnProperty的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12

這篇文章主要介紹了Redis緩存,泛型集合與json字符串的相互轉(zhuǎn)換實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07

這篇文章主要介紹了解決mybatis返回boolean值時(shí)數(shù)據(jù)庫(kù)返回null的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11

這篇文章主要介紹了Mybatis-Plus BaseMapper的用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08

最新評(píng)論

總結(jié)

以上是生活随笔為你收集整理的文本文件 java_简单的用java实现读/写文本文件的示例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

歡迎分享!

轉(zhuǎn)載請(qǐng)說(shuō)明來(lái)源于"生活随笔",并保留原作者的名字。

本文地址:文本文件 java_简单的用java实现读/写文本文件的示例