java 输入输出IO流:标准输入/输出System.in;System.out;System.err;【重定向输入System.setIn(FileinputStream);输出System.setOut(printStream);】
Java的标准输入输出分别通过System.in和System.out来代表的,在默认情况下它分别代表键盘和显示器,当程序通过System.in来获取输入时,实际上是从键盘读取输入 当程序试图通过 System.out 执行输出时,程序总是输出到屏幕:
从System类的源码可以看出in;out;err这几个常量 的类型
重定向标准输出到文件:System.setOut(printStream);
import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.PrintStream; /** * @ClassName PrintStreamExample * @projectName: object1 * @author: Zhangmingda * @description: XXX * date: 2021/4/18. */ public class PrintStreamExample { public static void main(String[] args) { try(PrintStream printStream = new PrintStream(new FileOutputStream("输入输出文件读写/src/test/output/System.out.txt"))) { System.setOut(printStream); System.out.println("卧槽,打印到哪里了????"); //打印到文件里面了 }catch (FileNotFoundException e) { e.printStackTrace(); } } }
重定向输入System.setIn(FileinputStream);
import com.sun.jdi.PathSearchingVirtualMachine; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.Scanner; /** * @ClassName InputStreamSystemInExample * @projectName: object1 * @author: Zhangmingda * @description: XXX * date: 2021/4/18. */ public class InputStreamSystemInExample { public static void main(String[] args) { try (InputStream inputStream = new FileInputStream("输入输出文件读写/src/test/output/System.out.txt")){ System.setIn(inputStream); Scanner scanner = new Scanner(System.in); while (scanner.hasNextLine()){ //看看是否还有下一行 System.out.println(scanner.nextLine()); //打印下一行 } }catch (FileNotFoundException e ){ e.printStackTrace(); }catch (IOException e){ e.printStackTrace(); } } }
posted on 2021-04-18 17:07 zhangmingda 阅读(354) 评论(0) 编辑 收藏 举报