亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

java筆記八:IO流之字符流與字符緩沖流

2019-11-17 03:27:27
字體:
來源:轉載
供稿:網友

  java中字符流主要都是繼承于Reader和Writer兩個抽象類。用于對字符文本的讀寫操作。

 一、轉換類流


 1 package com.iotest;
 2
 3 import java.io.FileInputStream;
 4 import java.io.FileNotFoundException;
 5 import java.io.FileOutputStream;
 6 import java.io.IOException;
 7 import java.io.InputStreamReader;
 8 import java.io.OutputStreamWriter;
 9
10 public class ConverseStreamDemo {
11
12     public static void main(String[] args) {
13         String s = "F://shar//test//test3.txt";
14         try {
15             //將字節流轉為字符流
16             OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(s));
17             osw.write("中國北京");
18             System.out.PRintln(osw.getEncoding());
19             osw.close();
20             osw = new OutputStreamWriter(new FileOutputStream(s,true),"GB2312");
21             osw.write("中國北京");
22             System.out.println(osw.getEncoding());
23             osw.close();
24         } catch (FileNotFoundException e) {
25             // TODO Auto-generated catch block
26             e.printStackTrace();
27         } catch (IOException e) {
28             // TODO Auto-generated catch block
29             e.printStackTrace();
30         }
31         try {
32             //將字節流轉為字符流
33             InputStreamReader isr = new InputStreamReader(new FileInputStream(s),"GB2312");
34             int c;
35             while((c=isr.read()) != -1){
36                 System.out.print((char)c);
37             }
38             System.out.println();
39             isr.close();
40         } catch (FileNotFoundException e) {
41             // TODO Auto-generated catch block
42             e.printStackTrace();
43         } catch (IOException e) {
44             // TODO Auto-generated catch block
45             e.printStackTrace();

46         }
47     }
48
49 }

 

二、FileReader和FileWriter


 1 package com.iotest;
 2
 3 import java.io.FileNotFoundException;
 4 import java.io.FileReader;
 5 import java.io.FileWriter;
 6 import java.io.IOException;
 7 /*
 8  * 使用flush()將流數據刷到目標里,這時流還存活著,還可以繼續使用該流進行別的操作。
 9  * close()雖然也有flush()的效果但是這時流已經死了,你如果想繼續使用流的話就必須在此建立流
10  */
11 public class MutiplicationTable {
12    
13     public static void main(String[] args) throws IOException {
14         String s = "F://shar//test//test5.txt";
15         FileWriter fw = new FileWriter(s);
16         FileReader fr = new FileReader(s);
17         for (int i = 1; i <= 9; i++) {
18             for (int j = 1; j <= i; j++) {
19                 String str = i + "*" + j + "=" + i*j + " ";
20                 fw.write(str);
21             }
22             fw.write("/r/n");
23             /*flush是指強行將輸出流中的數據寫到文件里面去。如果寫到這里的話就是一行一行的寫入文件
24              *最好每寫完一部分就刷新一次,如果最后刷新的話可能會造成數據的丟失
25              */
26             fw.flush();
27         }
28         //如果又不寫flush()又不寫close(),則不會寫入任何內容到文本里。只是寫到了緩沖區
29         //fw.flush(); 寫到這里的話就是所有的內容一起寫進文件
30         //fw.close(); close之前會調用flush()
31         //讀字符輸入流的數據
32         int c;
33         while ((c=fr.read())!=-1) {
34             System.out.print((char)c);
35         }
36     }
37
38 }

 

三、BufferedReader和BufferedWriter


 1 package com.iotest;
 2
 3 import java.io.BufferedOutputStream;
 4 import java.io.BufferedWriter;
 5 import java.io.FileOutputStream;
 6 import java.io.FileWriter;
 7 import java.io.IOException;
 8
 9 public class PrimeNumber {
10     BufferedWriter bw = null;
11     String fileName = "F://shar//test//test7.txt";
12     //判斷是否是質數
13     public boolean isPrime(int n){
14         for(int i=2;i<=n/2;i++){
15             if(n%i == 0){
16                 return false;
17             }
18         }
19         return true;
20     }
21     void printPrime(int m) throws IOException{
22         //將字節流轉緩沖流
23         bw = new BufferedWriter(new FileWriter(fileName));
24         int j = 0;
25         for (int i = 2; i < m; i++) {
26             if(isPrime(i)){
27                 j++;
28                 String s = String.valueOf(i);
29                 String s1 = s + " ";
30                 bw.write(s1);  //寫入文本文件
31                 if(j==10){
32                     j = 0;
33                     bw.newLine();  //寫入一個行分隔符
34                     bw.flush();  //強制刷新
35                 }
36             }
37         }
38        
39         bw.close();
40     }
41     public static void main(String[] args) throws IOException {
42         PrimeNumber pn = new PrimeNumber();
43         pn.printPrime(100);
44     }
45
46 }


四、PrintWriter


 1 package com.iotest;
 2
 3 import java.io.FileWriter;
 4 import java.io.IOException;
 5 import java.io.PrintWriter;
 6
 7 public class PrintWriterDemo {
 8
 9     public static void main(String[] args) throws IOException {
10         int A = 0;  //千位
11         int B = 0;  //百位
12         int C = 0;  //十位
13         int num = 0;
14         String fileName = "F://shar//test//test8.txt";
15         FileWriter fw = new FileWriter(fileName); //字符輸出流
16         PrintWriter pw = new PrintWriter(fw);     //將字節輸出流轉為PrintWriter
17         for (int i = 1000; i < 10000; i++) {
18             A = i/1000;
19             B = i/100 % 10;
20             C = i/10 % 10;           
21             if(i%11==0 && A == B+C){
22                 pw.print(i+" ");
23                 if(++num % 7 == 0){
24                     pw.println();  //寫入回車換行
25                     pw.flush();    //強制刷新流
26                 }
27             }
28         }
29         fw.close();
30        
31     }
32
33 }

五、標準IO


 1 package com.iotest;
 2
 3 import java.io.BufferedReader;
 4 import java.io.FileWriter;
 5 import java.io.IOException;
 6 import java.io.InputStreamReader;
 7 import java.io.PrintWriter;
 8 import java.util.Scanner;
 9
10 public class PackStardIO {
11
12     public static void main(String[] args) throws IOException {
13         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
14         PrintWriter o = new PrintWriter(System.out);  //包裝標準輸出
15         String s;
16         while((s=br.readLine())!=null && s.length()!=0){
17             o.println(s.toUpperCase());
18             //o.flush();   //一定要強制刷新讓其輸出來,否則不會輸出
19         }
20     }
21
22 }

 


 1 package com.iotest;
 2
 3 import java.io.BufferedInputStream;
 4 import java.io.BufferedOutputStream;
 5 import java.io.BufferedReader;
 6 import java.io.FileInputStream;
 7 import java.io.FileNotFoundException;
 8 import java.io.FileOutputStream;
 9 import java.io.IOException;
10 import java.io.InputStreamReader;
11 import java.io.PrintStream;
12
13 public class StandardIORedirect {
14
15     public static void main(String[] args) throws IOException {
16         PrintStream console = System.out;
17         BufferedInputStream in = new BufferedInputStream(new FileInputStream("C://Documents and Settings//01//桌面//Test//src//com//iotest//StandardIORedirect.java"));
18         PrintStream out = new PrintStream(new BufferedOutputStream(new FileOutputStream("F://shar//test//test9.txt")));
19         System.setIn(in);     //對標準輸入流重定向
20         System.setOut(out);
21         System.setErr(out);
22         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
23         String s;
24         while((s=br.readLine())!=null){   //從BufferedReader中讀取一行數據
25             System.out.println(s);
26         }
27         out.close();
28         System.setOut(console);
29     }
30
31 }


六、隨即訪問文件類


 1 package com.iotest;
 2
 3 import java.io.FileNotFoundException;
 4 import java.io.IOException;
 5 import java.io.RandomaccessFile;
 6
 7 public class RandomRW {
 8     public static void main(String[] args) throws IOException {
 9         RandomAccessFile raf = new RandomAccessFile("F://shar//test//test10.dat","rw");
10         final int DOUBLE_SIZE = 8;
11         for (int i = 0; i < 10; i++) {
12             raf.writeDouble(i);
13             System.out.print(" " + (double)i);
14         }
15         System.out.println();
16         raf.close();
17         RandomAccessFile raf1 = new RandomAccessFile("F://shar//test//test10.dat","rw");
18         raf1.seek(3*DOUBLE_SIZE);  //找到某個位置
19         raf1.writeDouble(300);     //往該位置插入數據
20         raf1.seek(5*DOUBLE_SIZE);
21         raf1.writeDouble(500);
22         raf1.close();
23         RandomAccessFile raf2 = new RandomAccessFile("F://shar//test//test10.dat","r");
24         for (int i = 0; i < 10; i++) {
25             System.out.print(" "+raf2.readDouble());
26         }
27         raf2.close();
28     }
29
30 }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品青草久久久久福利99| 亚洲曰本av电影| 国产精品美女免费| 久久6免费高清热精品| 国产精品第1页| 亚洲精品中文字幕av| 欧美激情亚洲另类| 国产精品成人观看视频国产奇米| 欧美在线一级va免费观看| 亚洲欧美精品suv| 亚洲亚裔videos黑人hd| 欧美视频免费在线观看| 久久久噜噜噜久久| 国产精品视频免费在线| 91欧美精品成人综合在线观看| 亚洲毛片在线免费观看| 日韩精品在线视频美女| 久久黄色av网站| 亚洲精品国产精品国自产观看浪潮| 欧美精品www在线观看| 欧美wwwxxxx| 国产成人在线一区二区| 欧美成人精品三级在线观看| 尤物yw午夜国产精品视频| 揄拍成人国产精品视频| 国产精欧美一区二区三区| 亚洲人成电影网站色xx| 欧美性精品220| 久久久国产在线视频| 久久亚洲一区二区三区四区五区高| 色小说视频一区| 91久久国产婷婷一区二区| 欧美最猛性xxxx| 午夜精品蜜臀一区二区三区免费| 成人国产精品日本在线| 欧美视频中文字幕在线| 91免费欧美精品| 最近2019年日本中文免费字幕| 日韩av免费在线| 国产精品jvid在线观看蜜臀| 成人欧美一区二区三区在线| 4438全国成人免费| 欧美精品999| 亚洲乱码国产乱码精品精天堂| www.亚洲成人| 亚洲福利影片在线| 欧美一级大胆视频| 全亚洲最色的网站在线观看| 中文日韩电影网站| 国产情人节一区| 欧美视频一二三| 国产一区二区三区视频在线观看| 黑人巨大精品欧美一区二区| 欧美黑人性生活视频| 久久精品99国产精品酒店日本| 欧美亚州一区二区三区| 亚洲欧美在线播放| 日韩电影中文字幕一区| 欧美麻豆久久久久久中文| 欧美大片在线看| 欧美性猛xxx| 久久久久久久一区二区三区| 色悠久久久久综合先锋影音下载| 国产精品一香蕉国产线看观看| 亚洲人午夜精品免费| 91夜夜未满十八勿入爽爽影院| 成人黄色短视频在线观看| 91福利视频在线观看| 久久99精品久久久久久琪琪| 97国产一区二区精品久久呦| 国产日韩在线观看av| 欧美日本黄视频| 亚洲人成绝费网站色www| 日韩在线精品一区| 欧美激情视频给我| 国产盗摄xxxx视频xxx69| 欧美猛少妇色xxxxx| 久国内精品在线| 欧美另类在线播放| 国模私拍一区二区三区| 国产精品中文字幕久久久| 在线视频国产日韩| 欧美极品少妇xxxxⅹ喷水| 国产女人精品视频| 国产日韩欧美在线观看| 欧美成人在线网站| 欧美日韩国产一中文字不卡| 第一福利永久视频精品| 久久久国产精品x99av| 国产精品ⅴa在线观看h| 国产成人精品综合| 欧美在线视频免费播放| 精品伊人久久97| 亚洲欧美日韩综合| 久久久久久久久久国产| 92版电视剧仙鹤神针在线观看| 亚洲人在线视频| 国产综合在线观看视频| 国模精品视频一区二区| 亚洲精品久久久久久久久久久久久| 欧美影院久久久| 欧美老女人性生活| 亚洲国产精品热久久| 欧美高清激情视频| 国产精品色视频| 亚洲欧美精品在线| 精品久久香蕉国产线看观看亚洲| 国产精品久久久久久av福利软件| 日韩中文字幕精品视频| 少妇精69xxtheporn| 91成人免费观看网站| 一区二区三区动漫| 在线亚洲国产精品网| 久久人人爽人人爽人人片av高清| 一区二区三区视频免费在线观看| 亚洲va国产va天堂va久久| 一区二区日韩精品| 久久99国产综合精品女同| 色琪琪综合男人的天堂aⅴ视频| 91精品久久久久久久久久久| 国产亚洲精品一区二区| 色小说视频一区| 成人精品网站在线观看| 成人性生交大片免费观看嘿嘿视频| 国产丝袜一区二区三区免费视频| 欧美日韩在线免费| 国产亚洲精品久久久优势| 亚洲精品第一国产综合精品| 成人情趣片在线观看免费| 日韩亚洲精品电影| 精品亚洲永久免费精品| 91国偷自产一区二区三区的观看方式| 亚洲欧美国产一本综合首页| 欧美精品在线免费观看| 欧美一级视频免费在线观看| 久久久久久亚洲精品中文字幕| 国产色婷婷国产综合在线理论片a| 日韩av最新在线| 中文字幕欧美日韩在线| 久久久精品美女| 欧美精品久久一区二区| 国产精品自产拍在线观看| 亚洲护士老师的毛茸茸最新章节| 91成人在线播放| 欧美大全免费观看电视剧大泉洋| 欧美激情2020午夜免费观看| 亚洲成人激情在线观看| 亚洲老头同性xxxxx| 国产精品盗摄久久久| 18一19gay欧美视频网站| 中文字幕一区日韩电影| 色av吧综合网| 日韩av中文字幕在线免费观看| 亚洲成色999久久网站| 一区二区三区日韩在线| 韩国三级电影久久久久久| 亚洲天堂av在线免费| 日本欧美黄网站| 97国产suv精品一区二区62| 久久视频国产精品免费视频在线| 欧美午夜女人视频在线| 国产色婷婷国产综合在线理论片a| 成人在线播放av| 免费av在线一区|