zoukankan      html  css  js  c++  java
  • 38.特殊操作流

    1.标准输入流

    public final class System

    • public static final InputStream in“标准”输入流。 
    • 该流已经打开,准备提供输入数据。 通常,该流对应于键盘输入或由主机环境或用户指定的另一个输入源。
    • public static final PrintStream out“标准”输出流。
    • 此流已经打开并准备好接受输出数据。 通常,此流对应于显示输出或由主机环境或用户指定的另一个输出目标。

      对于简单的独立Java应用程序,编写一行输出数据的典型方法是:

       

       System.out.println(data)
      
       public static void main(String[] args) throws IOException {
      // 1.       InputStream inputStream = System.in;
      //        int by;
      //        while ((by=inputStream.read())!=-1){
      //            System.out.println(((char)by));
      //        }
      ////        如何把字节流转化为字符流?用转换流
      // 2.       InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
      ////        使用字符流能不能实现一次读一行数据?可以,但是一次读取一行数据是字符流的特有方法:
      // 3.       BufferedReader bufferedWriter = new BufferedReader(inputStreamReader);
      
      //        上面三步其实可以合成一步:
              BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
              System.out.println("请输入一行字符串:");
              String s = bufferedReader.readLine();//不可以读取换行符
              System.out.println("您输入的内容是:" + s);
              System.out.println("请输入一个整数:");
              int i = Integer.parseInt(bufferedReader.readLine());
              System.out.println("您输入的整数是:" + i);
      //         自己实现键盘录入太麻烦了,于是java封装了一个输入类供我们使用:
              Scanner scanner = new Scanner(System.in);
              String s1 = scanner.nextLine();
      
          }

       

       2.标准输出流

      //public static final PrintStream out“标准”输出流。
              PrintStream out = System.out;
      //        public class PrintStream extends FilterOutputStream
      //System.out本质是一个字节输出流
              out.println("123");
              out.print(1);//必须带参数
              System.out.print(2);
              System.out.println(123);

       3.字节打印流,字符打印流

      //        PrintStream​(String fileName) 使用指定的文件名创建新的打印流
              PrintStream stream = new PrintStream("java_base_learn.txt");//写到项目根目录下面的java_base_learn.txt文件里面
      //        普通字节输出流写数据方法
              stream.write(97);//a
              stream.write(98);//b
      //        特有方法写数据
              stream.println(97);//97
              stream.println(98);//98
              stream.close();

              PrintWriter printWriter = new PrintWriter("java_base_learn2.txt");
              printWriter.write("write第一个字符串");
              printWriter.println("println输出的字符串");
              printWriter.close();
              PrintWriter printWriter1 = new PrintWriter(new FileWriter("java_base_learn3.txt"), true);
              printWriter1.println("自动刷新的构造方法创建的对象创建的字符串");
              printWriter1.close();

      字符打印流改进原来复制文件的方法:

      //        需求:将项目根目录下的java_base_learn3.txt文件内容复制到项目根目录下的java_base_learn4.txt文件
      //        原方法实现:
              BufferedReader bufferedReader = new BufferedReader(new FileReader("java_base_learn3.txt"));
              BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("java_base_learn4.txt"));
              String line;
              while ((line=bufferedReader.readLine())!=null){
                  bufferedWriter.write(line);
                  bufferedWriter.newLine();
                  bufferedWriter.flush();
              }
              bufferedWriter.close();
              bufferedReader.close();
      //        
      //        改进方法实现:
              BufferedReader bufferedReader = new BufferedReader(new FileReader("java_base_learn3.txt"));
              PrintWriter printwriter = new PrintWriter(new FileWriter("java_base_learn4.txt",true));
              String line;
              while ((line=bufferedReader.readLine())!=null){
                  printwriter.println(line);
              }
              bufferedWriter.close();
              bufferedReader.close();


       
  • 相关阅读:
    Realtime crowdsourcing
    maven 常用插件汇总
    fctix
    sencha extjs4 command tools sdk
    首次吃了一颗带奶糖味的消炎药,不知道管用不
    spring mvc3 example
    ubuntu ati driver DO NOT INSTALL recommand driver
    yet another js editor on windows support extjs
    how to use springsource tools suite maven3 on command
    ocr service
  • 原文地址:https://www.cnblogs.com/luzhanshi/p/13188658.html
Copyright © 2011-2022 走看看