Java 文本输入主要包含两种方法:FileRead -- 按字符读入,InputSreamReader -- 按行输入。

java 文本输出也包含两种方法:FileWriter 和 OuputStreamWriter,这两种都是按字符输出。

应用代码如下:

  1 package stream.inout;
  2 
  3 import java.io.*;
  4 
  5 public class FileStream {
  6     
  7     public static void main(String a[]){
  8         String inputfilepath = "E:/in.txt";
  9         /*
 10         in.txt data : 
 11             12345
 12         in2.txt data : 
 13             11
 14             22
 15             33
 16             44
 17             55
 18         output1.txt data :
 19             tttttrrrrreeeeewwwwwqqqqq
 20         output2.txt data :
 21             tttrrreeewwwqqq
 22         */
 23         
 24         //method no.1 =======================================
 25         try{
 26             int []input1 = new int[5];
 27             File inputfile = new File(inputfilepath);
 28             if(inputfile.isFile() && inputfile.exists()){
 29                 //这里的读入是按字符读入
 30                 FileReader fileread = new FileReader(inputfile);
 31                 int tmp = 0;
 32                 int i = 0;
 33                 while((tmp = fileread.read()) != -1){
 34                     input1[i++] = tmp - '0';
 35                 }
 36                 fileread.close();
 37                 for(i = 0; i < 5; i ++)
 38                     System.out.println("input1[ " + i +" ]= " + input1[i]);
 39             }else{
 40                 System.out.println("file is not exist");
 41             }
 42         }catch (Exception e){
 43             System.err.println("error happened");
 44             e.printStackTrace();
 45         }
 46         
 47 
 48         //method no.2 =======================================
 49         try{
 50             String []input2 = new String[5];
 51             String input2filepath = "E:/in2.txt";
 52             File inputfile = new File(input2filepath);
 53             if(inputfile.isFile() && inputfile.exists()){
 54                 //这里的读入是按行读入
 55                 InputStreamReader isr = new InputStreamReader(new FileInputStream(inputfile));
 56                 BufferedReader br = new BufferedReader(isr);
 57                 int i = 0;
 58                 String line = null;
 59                 //需注意的是每执行一次br.readLine(),就跳入下一行,故引入一个变量来记录
 60                 while((line = br.readLine()) != null){
 61                     input2[i++] = line;
 62                 }
 63                 br.close();
 64                 isr.close();
 65                 for(i = 0; i < 5; i ++)
 66                     System.out.println("input2[ " + i +" ]= " + input2[i]);
 67                 
 68             }else{
 69                 System.out.println("file is not exist");
 70             }
 71         }catch (Exception e){
 72             System.err.println("error happened");
 73             e.printStackTrace();
 74         }
 75         
 76         //output method no.1 ============================
 77         String outputfile1 = "E:/output1.txt";
 78         String outputfile2 = "E:/output2.txt";
 79         try{
 80             String []output = {"ttttt", "rrrrr", "eeeee", "wwwww", "qqqqq"};
 81             FileWriter filewriter = new FileWriter(outputfile1, false);
 82             for(int i = 0; i < 5; i ++){
 83                 filewriter.write(output[i]);
 84             }
 85             filewriter.close();
 86             
 87         }catch (Exception e){
 88             System.err.println("error happened");
 89             e.printStackTrace();
 90         }
 91         //output method no.2 ============================
 92         try {
 93             String []output1 = {"ttt", "rrr", "eee", "www", "qqq"};
 94             OutputStreamWriter outsw = new OutputStreamWriter(new FileOutputStream(outputfile2));
 95             BufferedWriter bw = new BufferedWriter(outsw);
 96             
 97             for(int i = 0; i < 5; i ++){
 98                 bw.write(output1[i]);
 99             }
100             bw.flush();
101             bw.close();
102             outsw.close();
103         } catch (Exception e) {
104             // TODO: handle exception
105             System.err.println("error happened");
106             e.printStackTrace();
107         }
108     }
109 
110 }

 

posted on 2015-10-16 20:17  成长中的蒲公英  阅读(414)  评论(0编辑  收藏  举报