<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    KevinGong

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      15 Posts :: 1 Stories :: 9 Comments :: 0 Trackbacks

    /*
    ?* 簡單的讀/寫文本文件的示例
    ?* 這里包含了三個例子,即
    ?* 1. 將文件讀入到內存(這里是StringBuffer)的例子
    ?* 2. 將內容中的文本寫到文件
    ?* 3. 將一個文件的內容讀出來寫入另一個文件中
    ?*??? 同時也展示了如果從輸入流中讀出來內容寫入輸出流中(僅限文本流)
    ?* 三個例子可以獨立存在,所以根據需要只看其中一個就行了。
    ?*/

    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. 演示將流中的文本讀入一個 StringBuffer 中
    ???? * @throws IOException
    ???? */
    ??? public void readToBuffer(StringBuffer buffer, InputStream is)
    ??????? throws IOException {
    ??????? String line;??????? // 用來保存每行讀取的內容
    ??????? BufferedReader reader = new BufferedReader(new InputStreamReader(is));
    ??????? line = reader.readLine();?????? // 讀取第一行
    ??????? while (line != null) {????????? // 如果 line 為空說明讀完了
    ??????????? buffer.append(line);??????? // 將讀到的內容添加到 buffer 中
    ??????????? buffer.append("\n");??????? // 添加換行符
    ??????????? line = reader.readLine();?? // 讀取下一行
    ??????? }
    ??? }

    ??? /**
    ???? * 2. 演示將 StringBuffer 中的內容讀出到流中
    ???? */
    ??? public void writeFromBuffer(StringBuffer buffer, OutputStream os) {
    ??????? // 用 PrintStream 可以方便的把內容輸出到輸出流中
    ??????? // 其對象的用法和 System.out 一樣
    ??????? // (System.out 本身就是 PrintStream 對象)
    ??????? PrintStream ps = new PrintStream(os);??
    ??????? ps.print(buffer.toString());
    ??? }

    ??? /**
    ???? * 3*. 從輸入流中拷貝內容到輸入流中
    ???? * @throws IOException
    ???? */
    ??? public void copyStream(InputStream is, OutputStream os) throws IOException {
    ??????? // 這個讀過過程可以參閱 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();???? // 最后確定要把輸出流中的東西都寫出去了
    ??????????????????????????? // 這里不關閉 writer 是因為 os 是從外面傳進來的
    ??????????????????????????? // 既然不是從這里打開的,也就不從這里關閉
    ??????????????????????????? // 如果關閉的 writer,封裝在里面的 os 也就被關了
    ??? }

    ??? /**
    ???? * 3. 調用 copyStream(InputStream, OutputStream) 方法拷貝文本文件
    ???? */
    ??? public void copyTextFile(String inFilename, String outFilename)
    ??????? throws IOException {
    ??????? // 先根據輸入/輸出文件生成相應的輸入/輸出流
    ??????? InputStream is = new FileInputStream(inFilename);
    ??????? OutputStream os = new FileOutputStream(outFilename);
    ??????? copyStream(is, os);???? // 用 copyStream 拷貝內容
    ??????? is.close(); // is 是在這里打開的,所以需要關閉
    ??????? os.close(); // os 是在這里打開的,所以需要關閉
    ??? }

    ??? public static void main(String[] args) throws IOException {
    ??????? int sw = 1;???? // 三種測試的選擇開關
    ??????? AccessTextFile test = new AccessTextFile();
    ???????
    ??????? switch (sw) {
    ??????? case 1: // 測試讀
    ??????? {
    ??????????? InputStream is = new FileInputStream("E:\\test.txt");
    ??????????? StringBuffer buffer = new StringBuffer();
    ??????????? test.readToBuffer(buffer, is);
    ??????????? System.out.println(buffer);???? // 將讀到 buffer 中的內容寫出來
    ??????????? is.close();
    ??????????? break;
    ??????? }
    ??????? case 2: // 測試寫
    ??????? {
    ??????????? StringBuffer buffer = new StringBuffer("Only a test\n");
    ??????????? test.writeFromBuffer(buffer, System.out);
    ??????????? break;
    ??????? }
    ??????? case 3: // 測試拷貝
    ??????? {
    ??????????? test.copyTextFile("E:\\test.txt", "E:\\r.txt");
    ??????? }
    ??????????? break;
    ??????? }
    ??? }

    }

    posted on 2007-02-03 21:58 KevinGong 閱讀(31697) 評論(0)  編輯  收藏 所屬分類: J2SE

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 免费看国产精品麻豆| 国产大片线上免费观看| 免费一级做a爰片久久毛片潮喷| 亚洲日日做天天做日日谢| 99视频在线精品免费观看6| 亚洲综合国产成人丁香五月激情 | 在线观着免费观看国产黄| 亚洲一区二区三区在线观看网站| 18禁无遮挡无码网站免费| 亚洲人成人网站18禁| 成人亚洲网站www在线观看| 四虎影视久久久免费观看| 日韩精品亚洲aⅴ在线影院| 免费观看一区二区三区| 亚洲精品综合一二三区在线| 曰批全过程免费视频播放网站| 亚洲中字慕日产2021| 日本免费人成视频播放| 产传媒61国产免费| 亚洲va在线va天堂va888www| 黄色片在线免费观看| 水蜜桃视频在线观看免费| 中文亚洲AV片不卡在线观看| 午夜精品免费在线观看| 中文字幕亚洲精品无码| 午夜亚洲av永久无码精品| 午夜网站在线观看免费完整高清观看| 亚洲伊人久久精品| 亚洲毛片不卡av在线播放一区| 久久久精品午夜免费不卡| 亚洲三级中文字幕| 亚洲中文字幕视频国产| 3d成人免费动漫在线观看| 在线观看亚洲免费视频| 亚洲精品成人片在线观看精品字幕| 在线免费观看亚洲| 黄色一级视频免费| 亚洲色图黄色小说| 亚洲国产日韩成人综合天堂| 最近最新高清免费中文字幕 | 一区二区免费在线观看|