前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java IO学习笔记七

Java IO学习笔记七

作者头像
爱撒谎的男孩
发布2019-12-31 11:20:24
3070
发布2019-12-31 11:20:24
举报
文章被收录于专栏:码猿技术专栏

文章目录

  1. 1. System对IO的支持
    1. 1.1. System.out
    2. 1.2. System.in
    3. 1.3. System.err
    4. 1.4. System.exit
    5. 1.5. 参考文章

System对IO的支持

  • System是系统的类,其中的方法都是在控制台的输入和输出,但是通过重定向也是可以对文件的输入输出
  • System中定义了标准输入、标准输出和错误输出流,定义如下:
    1. static PrintStream err “标准”错误输出流。
    2. static InputStream in “标准”输入流。
    3. static PrintStream out “标准”输出流。
  • 从上面的定义可以知道这里的返回值都是字节的输入和输出流,因此可以使用PrintStream接受这个返回值,然后利用其进行输出,同样的输入也是可以这样做,当然对于OutputStreamInputStream也是可以的,因为PrintStream是继承OutputStream

System.out

  • System.out是一个标准的输出流,可以使用PrintStreamOutputStream接收返回值,然后使用其进行标准的输出,实例如下
代码语言:javascript
复制
PrintStream printStream=System.out;  //使用PrintStream
//OutputStream outputStream=System.out;   //使用OutputStream
    String name="陈加兵";
    int age=22;
    printStream.printf("姓名:%s,年龄:%s",name,age);  //使用格式话的输出

其实我还是比较用PrintStream进行格式话的输出的

  • System.out的重定向输出,可以使用这个将指定的内容输出到文件中,实例如下:
代码语言:javascript
复制
try {
    File file=new File("/tmp"+File.separator+"test"+File.separator+"test.txt");
        System.setOut(new PrintStream(new PrintStream(file)));  //设置重定向的文件
    }catch (IOException e) 
    {
        e.printStackTrace();
    }
    System.out.println("陈加兵的个人博客");//向文件输入内容

System.in

  • 这是一个标准输入流,可以使用InputStream来接受返回值,然后利用其进行输入,实例如下:
代码语言:javascript
复制
byte[] bytes=new byte[1024];
       InputStream inputStream=System.in;   //使用InputStream来接收这个返回值
       try {
           inputStream.read(bytes);  //读取控制台输入的字符串
       }catch (IOException e)
       {
           e.printStackTrace();
       }
       System.out.println(new String(bytes));  //输出

说实话这种控制台输入的方式不太好,还是使用原来的Scanner比较好

  • System.in的重定向
代码语言:javascript
复制
byte[] bytes = new byte[1024];
File file = new File("/tmp" + File.separator + "test" + File.separator + "test.txt");
try {
    System.setIn(new FileInputStream(file));  //设置重定向
    System.in.read(bytes);   //读取文件中字节数据
} catch (IOException e) {
    e.printStackTrace();
}
System.out.println(new String(bytes));   //打印出文件中的内容

System.err

  • 这是一个标准错误输出流,在IDEA中输出的内容是红色的,和System.out输出的格式一样,只是颜色不一样,因为这里的重定向不太重要也不太常用,这里就不再详细说了,详情请看帮助文档

System.exit

  • public static void exit(int status)
  • 终止当前的java虚拟机,参数用作状态码;根据惯例,非0 的状态码表示异常终止,如System.exit(0)

参考文章

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-05-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • System对IO的支持
    • System.out
      • System.in
        • System.err
          • System.exit
            • 参考文章
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档