`
qingdaoguy
  • 浏览: 24312 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

java输入输出流重定向

 
阅读更多

 

     JAVA中,默认的输入是键盘,输出为显示器,而偶尔我们需要特定的输入流或输出流。在java中,这真不是一个问题!

 

     方法一:

           针对文件读写一类的,这时可以直接读取、写入文件。

           Java提供了丰富的文件对象,初学让人有些不知所措的。熟了就好。

           某种意义上,这不叫重定向,这里不妨理解成带上双引号的重定向吧!

      方法二:

           同样适用于文件读写,但当需要GUI控制台输入输出时,可以考虑下重定向。

           在Java的System类中提供了以下重定向函数:

                1)setErr(PrintStream err):重新分配“标准”错误输出流。

                2)setIn(InputStream in):重新分配“标准”输入流。

                3)setOut(PrintStream out):重新分配“标准”输出流。

           重定向功能不需要后,执行以下语句即可:

                1)恢复“标准”错误输出流

                   FileOutputStream fdErr = new FileOutputStream(FileDescriptor.err);
                   System.setErr(new PrintStream(new BufferedOutputStream(fdErr, 128), true));

                2)恢复“标准”输入流

                   FileInputStream fdIn = new FileInputStream(FileDescriptor.in);

                   System.setIn(new BufferedInputStream(fdIn));

                3)恢复“标准”输出流
                   FileOutputStream fdOut = new FileOutputStream(FileDescriptor.out);
                   setOut0(new PrintStream(new BufferedOutputStream(fdOut, 128), true));

 

          以本人的观点,除非迫不得已,最好不要用方法二,除非你信心十足,否则谨慎为好!

 

 

分享到:
评论

相关推荐

    java中的标准输入输出流

    本文介绍了Java中的标准输入输出流的相关知识,包括标准输入输出流的概念、重定向、字节流与字符流的区别、流的包装与缓冲以及对象的串行化等内容。掌握了这些基础知识,可以帮助开发者更有效地处理程序中的输入输出...

    Java输入输出流(IO)教程

    8)简述Java中标准输入输出流(如System类的输入输出流)的操作方法及其重定向的技术;11)讨论过滤输入流和过滤输出流的作用和使用示例,最后给出了一系列文件读写的实际代码范例,并讨论了处理IO异常的方法。适用...

    浅谈输入输出流

    - Java允许将标准输入输出流重定向到其他流中,例如将输出重定向到文件。 ```java System.setOut(new PrintStream(new FileOutputStream("output.txt"))); ``` #### 五、对象序列化 除了基本的数据读写,Java...

    Java I/O 标准输入输出流System.in

    在Java编程语言中,I/O(输入/输出)是程序与外部世界交互的重要部分,而标准输入输出流(System.in, System.out, System.err)是Java内置的预定义流,用于处理程序与操作系统之间的基本输入输出操作。这篇博客将深入...

    cmd中的重定向输出,管道

    通过使用`2>&1`,我们可以将标准错误输出重定向到标准输出,从而将两者合并为一个输出流。例如: ```cmd mycommand > mylog.txt 2>&1 ``` 这条命令的意思是将`mycommand`命令的标准输出重定向到`mylog.txt`文件中...

    ACM中使用java

    #### 四、Java输入输出综合重定向 在实际应用中,我们往往需要同时实现输入和输出的重定向。这可以通过结合上面介绍的方法来实现。 1. **创建输入输出流**:创建输入输出流并分别指向对应的文件。 ```java ...

    ACM中使用java(完整版)

    本资源是一份完整的 ACM 中使用 Java 的教程和参考文献,涵盖了 Java 语言的基础知识、输入输出重定向、数据结构和算法等方面的内容。 Java 基础知识 在 Java 中,输出重定向是通过使用 `PrintStream` 对象来实现...

    java用重定向方法从文件中读入或写入数据

    _System.out_对象是Java中的标准输出流##_System.in_对象是Java中的标准输入流##通过使用重定向方法,我们可以将控制台的输入或输出重定向到文件中,从而实现从文件中读入或写入数据。 二、Java重定向方法读取文件 ...

    Java中重定向输出流实现用文件记录程序日志

    Java提供了一种机制,可以通过重定向输出流来将程序的输出信息记录到文件中,而不是仅仅显示在控制台上。以下是对这一主题的详细解释。 首先,Java的`System`类中包含三个标准流:`System.out`、`System.err`和`...

    【Code】标准输出重定向到GUI

    首先,我们需要理解Java的System类中定义的三个流:`System.out`(标准输出)、`System.err`(标准错误)和`System.in`(标准输入)。在默认情况下,它们分别对应于控制台的输出、错误输出和键盘输入。为了在GUI中...

    推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 15.输入输出(共41页).ppt

    Java提供了InputStream和OutputStream作为所有字节输入流和输出流的基类,而Reader和Writer则是所有字符输入流和输出流的基类。流可以根据流向分为输入流和输出流,用于数据的读取和写入。此外,还有节点流和处理流...

    java post文件流的操作

    - `setDoOutput()` 和 `setDoInput()`:分别表示是否允许写入输出流和读取输入流。 - `setRequestProperty()`:设置请求头属性,如User-Agent、Referer等。 #### 2.2 发送请求数据 - `getOutputStream()`:获取...

    初一数学输入输出PPT学习教案.pptx

    而处理控制台交互时,标准输入输出流就非常实用。 总的来说,Java的输入输出体系是一个强大的工具,允许程序员高效地处理各种数据传输任务。掌握流的概念和使用,不仅可以帮助初学者更好地理解和解决数学问题,还能...

    java管道流

    管道流是一种特殊的输入/输出流,它可以在两个线程之间传递数据。其中一个线程负责写入数据到`PipedOutputStream`,而另一个线程则负责从`PipedInputStream`读取这些数据。 ### 示例代码解析 下面我们将对给定的...

    JAVA中的IO流简介

    - 特殊子类如`DataOutputStream`、`BufferedOutputStream`、`PrintStream`等,提供额外功能如数据格式写入、缓冲区写入和标准输出流重定向等。 ### 字符流详解 #### Reader与Writer - **Reader**:用于读取字符...

    优质课件 入门必看 清华大学出版 Java程序设计 第7章-文件与数据流(共114页).ppt

    #### 1.6 标准输入输出流的重定向 Java允许程序员重定向标准输入、输出和错误流,这在进行命令行工具集成或者测试时非常有用。例如,可以将标准输入从键盘改变为文件,或将标准输出和错误输出重定向到文件。 ### 2...

    重定向原来介绍

    - 输入输出流的操作通常涉及到标准输入输出设备,例如本例中的`stdin`, `stdout`, `stderr`等。 #### 2. 文件操作 - Servlet还可以用来操作文件系统,例如创建、读取、修改和删除文件。 - 在提供的部分内容中,我们...

    基于Java+web的在线Java编辑器.pdf

    1. **Java处理命令输入输出流**:在线编辑器通过Java调用`exec`命令执行程序,创建`Progress`对象以实现与程序运行环境的交互。Java的流API允许对输入和输出进行控制,输入流用于读取数据源,输出流则用于写入数据...

    JAVA管道流.pdf

    PipedOutputStream则是输出流,用于写入数据到PipedInputStream。通过将System.out和System.err的打印流替换为PipedOutputStream,我们可以确保所有输出都被重定向到管道流中,然后可以从PipedInputStream读取这些...

Global site tag (gtag.js) - Google Analytics