在Java中操作标准输入输出设备,可以像普通文件那样进行流的输入与输出。基于这样一个原理,就可以实现文件流与标准流之间的重定向。

1、文件输入流重定向到标准输入流。

文件输入流重定向到标准输入流可以将文件中的数据输入到标准输入设备中。看下面的例子:

public class JavaRedirect {

public static void main(String[] args) throws FileNotFoundException {

File file = new File("F:\\in.txt");//输入文件

InputStream in = new BufferedInputStream(new FileInputStream(file));//输入流

System.setIn(in); //设置文件输入流到标准输入流

Scanner scan = new Scanner(System.in);

String next = scan.next();//获取标准输入流中的一个字符串

System.out.println(next);

scan.close();

}

这段代码的好处就是,我们不需要通过键盘手动输入数据,程序在运行时不会发生IO阻塞的情况。

文件输入流重定向到标准输入流的应用:

假如有一个测试程序,测试数据非常多,通过手动从键盘输入根本就不现实,那么就可以采用文件输入流重定向到标准输入流的方式将文件中测试数据一次性重定向到标准输入流供程序读取。达到了一种自动完成测试的目的。

2、标准输出流重定向到文件流。

可以将程序运行的结果,输入到文件中。看下面的例子:

public class JavaRedirect {

public static void main(String[] args) throws FileNotFoundException {

PrintStream out = new PrintStream(new File("F:\\out.txt"));

out.print("fsdfds");

System.setOut(out);

}将字符串fsdfds从标准输出流从定向到文件F:\\out.txt。

应用:

当我们非常关心程序的输出结果时,并且输出结果数据非常大,为了便于我们观察分析,就可以使用标准输出流重定向到文件流将数据输出到文件中。

java流重定向如何分类,Java 文件流与标准流之间的重定向相关推荐

  1. c++语言文件流,C++ IO类、文件输入输出、string流详细讲解

    新的C++标准中有三分之二的内容都是描述标准库.接下来重点学习其中几种核心库设施,这些是应该熟练掌握的. 标准库的核心是很多容器类(顺序容器和关联容器等)和一簇泛型算法(该类算法通常在顺序容器一定范围 ...

  2. linux重定向到某目录文件,linux shell中12 21 1file_path重定向语法详解

    当初在shell中, 看到">&1"和">&2"始终不明白什么意思.经过在网上的搜索得以解惑.其实这是两种输出. 在 shell 程 ...

  3. java中pdf写成base64文件流,Java操作pdf文件与Base64编码相互转换与文件流操作

    1.第一步,引入bc包的安装依赖. 在pom.xml中引入. org.bouncycastle bcprov-jdk15on 1.60 引入后reimport一下项目. 2.pdf文件转换成Base6 ...

  4. 【C++】IO库 : IO类,文件输入输出,string流

    前面已经在用的IO库设施 istream:输入流类型,提供输入操作. ostream:输出流类型,提供输出操作 cin:一个istream对象,从标准输入读取数据. cout:一个ostream对象, ...

  5. 前端知识-CSS定位机制:标准流、浮动、定位

    标准流 从上到下依次排列 浮动 脱离标准流,不占位置,但影响标准流,但是文字会环绕而非到浮动元素下面. 在最近父元素内浮动,不超过父元素的padding只在content内浮动 浮动是的元素显示模式变 ...

  6. Java基础 -IO入门简介、文件操作、与IO流分类简述

    文章目录 IO流入门概念 文件概念 什么是文件 文件流 文件常用操作 创建文件对象相关构造器和方法 创建文件案例 注意 获取文件相关信息 目录的操作和文件删除 delete mkdir.mkdirs ...

  7. java标准i o重定向_Java I/O(二)其他常用的输入输出流PrintStream等、标准流重定向...

    四.FilterOutputStream.PrintStream PrintStream是继承自FilterStream类的,例如标准输出流System.out就是著名的PrintStream类对象. ...

  8. Java第十天笔记01——文件与流

    目录 1.File类 2.流的概念及API 3.字节输入流 4.字节输出流 5.使用字节输入和字节输出流复制文件 6.字符输入流 7. 字符输出流 8.字符输入和字符输出流复制文件内容 9.使用处理流 ...

  9. JAVA之IO流、异常、File文件类

    1 IO流 1.1IO流概述及其前奏 1.1.1IO流概述 IO流用来处理设备之间的数据传输,上传文件和下载文件 . 1.1.2IO流前奏 了解Io流前必须先了解异常和File类,因为File表示的是 ...

  10. Java文件操作-I/O流

    文章目录 File类 概述 构造方法 创建功能 判断功能 获取功能 删除功能 绝对路径和相对路径的区别 递归 概述 递归求阶乘 IO流 IO流概述 IO流分类 字节流 字节流抽象基类 字节输出流 字节 ...

最新文章

  1. mvc中的ViewData用到webfrom中去
  2. 威斯康辛大学《机器学习导论》2020秋季课程完结,课件、视频资源已开放
  3. 【the service mysql57 failed the most】
  4. Delphi动态事件
  5. 数据结构二:排序(快速排序和堆排序)
  6. 英语语法---主语详解
  7. 如何在 .Net Core 中使用 IHostedService
  8. 机器学习中的alpha学习率参数
  9. 我对计算机网络的期待,表白对女朋友说的情话短句 我愿是你最期待的风景线...
  10. 贝叶斯思维 统计建模的Python学习法
  11. 第 7 章 Neutron - 073 - Service Plugin / Agent
  12. 前端页面预览word_jquery word 在线预览 jquery word预览插件
  13. adb 切换usb模式_利用adb命令打开usb调试
  14. 南京大学计算机学院刘向阳,刘向阳  南京大学计算机科学与技术系教授_光通信名人录_光邻网...
  15. VB通过洗牌算法生成随机数ID
  16. 2019年度受欢迎的开源软件
  17. XStream java.lang.ClassNotFoundException 问题解决
  18. ORA_HASH函数
  19. Man Is Here For The Sake of Other Men 人是为了别人而活着
  20. 小米8手机刷机大坑,后人注意

热门文章

  1. [Python]自学笔记36:论一只爬虫的自我修养3:隐藏
  2. 《现代操作系统(中文第三版)》课后习题——第九章 安全
  3. 使用laser_filters屏蔽车架
  4. iOS 7 之Airdrop 分享
  5. phalapi门店管理系统插件,门店erp系统
  6. netty使用中的LEAK: ByteBuf.release() was not called before it‘s garbage-collected
  7. 中国科技大学计算机系导师,中国科学技术大学
  8. 【蓝桥杯备战】 Day02
  9. 破解第三课 关键跳和关键CALL
  10. flac转mp3教程flac怎么转mp3才能减小音质的丢失