java-初识输入输出重定向以及简单输入流输出

上代码了解一下:

 1 package com.etc;
 2
 3 import java.io.BufferedInputStream;
 4 import java.io.BufferedOutputStream;
 5 import java.io.FileInputStream;
 6 import java.io.FileNotFoundException;
 7 import java.io.FileOutputStream;
 8 import java.io.InputStream;
 9 import java.io.PrintStream;
10 import java.util.Scanner;
11
12 /*
13  * 对输入输出流进行打印
14  * System.in
15  * System.out
16  * System.err
17  * 输入输出重定向:
18  * System.setIn(InputStream in)
19  * System.setOut(PrintStream out)
20  * System.setErr(PrintStream err);
21  * 回控制台:
22  * FileDiscriptor.in
23  * FileDiscriptor.out
24  * FileDiscriptor.err
25  */
26 public class OverideSystem {
27
28     public static void main(String[] args) throws FileNotFoundException {
29         Overide();
30         System.out.println("I like codes very much!");
31         testPrintStream();
32     }
33     //重定向方法实现
34     public static void Overide() throws FileNotFoundException {
35         //重定向输入方式及自动更新
36         System.setOut(new PrintStream(new BufferedOutputStream(new FileOutputStream("E:/test.txt")),true));
37     }
38
39     public static void testPrintStream() throws FileNotFoundException {
40         //通过文件输入流放入系统的输入,然后再通过Scanner函数将输入结果打印出来
41         InputStream in=System.in;
42         in=new BufferedInputStream(new FileInputStream("E:/test.txt"));
43         Scanner sc=new Scanner(in);
44         System.out.println("输出结果:");
45         System.out.println(sc.nextLine());
46
47     }
48 }

效果截图:

ps:文章仅作学习了解一用,并未深入,欢迎大佬点评。

原文地址:https://www.cnblogs.com/weekstart/p/10818570.html

时间: 2024-10-09 13:27:47

java-初识输入输出重定向以及简单输入流输出的相关文章

java笔记--重定向输出流实现程序输出到日志

重定向输出流实现程序输出到日志 利用System类中的setOut()方法,实现输出流的重定向,把它指向一个文件输出流,从而实现日志功能.即: 程序运行后绘制控制台提示运行结束信息,但是在运行过程中的步骤都保存到了日志文件中. 主要方法setOut(): 重新分配System类的标准输出流. public static void setOut(PrintStream out) out表示新的输出流对象 setErr() 重新分配System类的标准错误输出流. public static voi

Java应用程序中System.out.println输出中文乱码

Java应用程序中System.out.println输出中文乱码 2013-12-10 21:27:08cnblogs.com-bluepoint2009-点击数:3631 其实,解决办法比较简单,即:编译时指定编码为UTF-8,如: 1 javac -encoding utf-8 HelloJava.java 这样,再运行时就不会出现乱码. 一.中文问题的来源 计算机最初的操作系统支持的编码是单字节的字符编码,于是,在计算机中一切处理程序最初都是以单字节编码的英文为准进行处理.随着计算机的发

CentOS下输入输出重定向

nux重定向是指修改原来默认的一些东西,对原来系统命令的默认执行方式进行改变,比如说简单的我不想看到在显示器的输出而是希望输出到某一文件中就可以通过Linux重定向来进行这项工作. Linux默认输入是键盘,输出是显示器.你可以用重定向来改变这些设置.比如用wc命令的时候本来是要手动输入一篇文字来计算字符数的,用了重定向后可以直接把一个已经写好的文件用‘<’指向这条命令,就直接可以统计这个文件的字符数等了.输出也是一样,你可以把屏幕输出重定向到一个文件里,再到文件里去看结果.重定向操作符可以用来

实验理解Linux SHELL 输入输出重定向

在shell脚本中发现>/dev/null 2>&1这样的语句,以前没有去深入地理解这个命令的作用,这个命令和 2>&1 >/dev/null有什么区别?通过实验理解这两个命令及shell输入输出重定向的重点. shell重定向介绍 我们一般在使用shell命令的时候,多是通过键盘输入,在屏幕上查看命令的执行结果(包括正常输出与错误输出).如果某些情况下,我们需要将shell命令的执行结果存储到文件中,那么我们就需要使用输入输出的重定向. 文件描述符 当执行shel

Unix shell输入输出重定向

敲代码的时候,适当地打印出一些进度或者日志信息经常能帮助我们跟踪程序的执行结果.可是,这些结果或者日志打印信息到屏幕上并不能作为以后检查问题的根据.这就是重定向的作用,敲代码的时候,我们能够方便的将相关的打印信息到屏幕或者是从键盘接收输入(这种优点就是避免直接操作文件).利用重定向我们能够非常方便地将输入输出重定向到文件或者其他地方. 1.文件描写叙述符(以下部分来自维基百科) 文件描写叙述符(File descriptor)是计算机科学中的一个术语,是一个用于表述指向文件的引用的抽象化概念.

java基本输入输出练习

java获取用户的输入分两种,一种是字符的输入,一种是整行的输入,要用到java.io包.对于字符输入来说,使用System.in方法可以输入字符:对于整行的输入,可以使用Scanner类的方法获取整行输入. import java.io.*; import java.util.*; public class helloWorld { public static void main(String[] args) { // TODO Auto-generated method stub char

linux输入输出重定向,及管道

输入输出重定向1,输入输出重定向,是针对过滤器的,不针对,编辑器和交互工具2,>号只把正确的标准输出重定向,输出错误信息,可以用2> 3,新建或清空文件可以直接用>filename,>和2>都会清空目标文件4,&>号可以把正确信息和错误信息全部输出重定向6 5,>>可以把重定向追加到目标文件 6,<为输入重定向,<<为等待输入直接目标出现为止,输入重定向可以将标准输入重定向为文件,如cat 管道输出1,管'道输出可以用|,比如 ls

shell介绍、历史命令、命令补全和别名、通配符、输入输出重定向

shell介绍 shell是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具.实际上,在shell和计算机硬件之间还有一层东西--系统内核. 用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作. Redhat.Centos 默认安装的shell版本是bash,它是sh的增强版. 历史命令 我们执行过的命令Linux都会记录,预设可以记录1000条历史命令.这些命令保存在用户家目录的.bash_h

使用Shell脚本编译运行C++源码 输入输出重定向

在写C++控制台程序的时,如果使用Xcode或者Visual Studio之类的IDE,需要创建许多工程,会造成很多不便.有时,采用Vim或者Sublime text等编辑器编写简单的控制台程序能节省许多时间.但是,在编译时,就必使用命令行编译运行.这时,一个事先编写好的shell脚本能大大缩短调试时间. 把下面的代码复制并保存为xxx.sh文件,输入要编译的文件名(不包括后缀)和编译选项(可选),即可运行(Linux或者MacOS系统). 1 ##/bin/bash 2 echo "-----