/        标准输入输出流:
                直接类名调用   一经创建无法改变
                public static final PrintStream err “标准”错误输出流。 

                public static final InputStream in “标准”输入流。  用来读取键盘输入的数据
                    调用:System.in
                        InputStream is =System.in;
                        Scanner sc=new Scanner(System.in);读取键盘录入

                public static final PrintStream out  “标准”输出流。
                    System.out.println()将数据输在再命令行
 */
package IO;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.io.Writer;

public class IO {
public static void main(String[] args) throws IOException{
    /*    例子:输出指定文件在命令行
    项目文件读取=====字符输入流
    命令行====基本的输出流
    由于标准输出流是一个字节的输出流,所以只能输出字节或者字节组,但是我们读取道得数据则是字符串,我们通过GetByte来获取字节数值
    我们想通过标准输出流输出字符串,
    把标准输出流转化成一种字符输出流,OutputStreamWriter
    OutputStreamWriter(OutputStream out)     创建使用默认字符编码的 OutputStreamWriter。
    把标准输入流转化成一种字符输入流,InputStreamReader
    InputStreamReader(InputStream in) 创建一个使用默认字符集的 InputStreamReader。
    method();
    method01();
    method02();
     */
    /*例子:读取键盘录入的数据,并输出到a.txt文件当中
     创建字节输入流
     创建字符输入流
     */

    InputStream is=System.in;
    FileWriter fw=new FileWriter("a.txt");
    byte[] bys= new byte[2048];
    int len;
    while((len=is.read(bys))!=-1) {
        fw.write(new String(bys));
        fw.flush();
    }
    is.close();
    fw.close();

}

public static void method02() throws FileNotFoundException, IOException {
    BufferedReader br=new BufferedReader(new FileReader("Systemout.txt"));
    Writer w=new OutputStreamWriter(System.out);
    BufferedWriter bw=new BufferedWriter(w);
    String line;
    while((line = br.readLine())!=null) {
        bw.write(line);
        bw.newLine();
    }
    w.close();
    br.close();
}
public static void method01() throws FileNotFoundException, IOException {
    //    创建输入流对象
        BufferedReader br=new BufferedReader(new FileReader("Systemout.txt"));
        Writer w=new OutputStreamWriter(System.out);
        String line;
        while((line = br.readLine())!=null) {
            w.write(line);
            w.write("\r\n");
        }
        w.close();
        br.close();
}

public static void method() throws FileNotFoundException, IOException {
    //        创建输入流对象
            BufferedReader br=new BufferedReader(new FileReader("Systemout.txt"));
    //        创建输出基本流
            OutputStream os=System.out;
            String line;
            while((line=br.readLine())!=null) {
                os.write(line.getBytes());
        }
            os.close();
            br.close();
}
}

总结:IO中的File是文件操作  字符缓冲类BufferWriter  BufferReader   基本输入输出流 System.in  System.out  转化流OutputStreamWriter  InputStreamReader

基本输入输出流只能带入数组参数  这时候需要把字节的输入输出流转化为字符类的输入输出流  这时候就有可转化流  将基本的输入输出流转换为字符高效缓冲流BufferWriter  BufferReader

java-IO-基本输出输入流的更多相关文章

  1. java Io流输出指定文件的内容

    package com.hp.io; import java.io.*; public class  BufferedReaderTest{ /** *@param   想想 */ public st ...

  2. 关于System.getProperty("java.io.tmpdir");的输出,及System.getProperty();参数

    1,首先来介绍下System.getProperty("java.io.tmpdir")输出因为这个输出有点特殊. 理论介绍:他是获取系统临时目录.可以是window的temp,l ...

  3. 【Java基础】Java IO流的总结

    Java IO流分为输入流和输出流,而输入流和输出流中又分字符流和字节流.顾名思义,输入流则是输入到程序中计算,输出流是把程序的结果输出到文件或者设备.而字符流输入输出以字符为单位,字节流则是以字节为 ...

  4. java io系列14之 DataInputStream(数据输入流)的认知、源码和示例

    本章介绍DataInputStream.我们先对DataInputStream有个大致认识,然后再深入学习它的源码,最后通过示例加深对它的了解. 转载请注明出处:http://www.cnblogs. ...

  5. 1.java.io包中定义了多个流类型来实现输入和输出功能,

    1.java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分 类,按功能分为:(C),如果为读取的内容进行处理后再输出,需要使用下列哪种流?(G)   A.输入流和输出流 B ...

  6. java中的IO流(输入流与输出流)概述与总结

    Java中IO流,输入输出流概述与总结 总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都 ...

  7. java:OutputStream和InputStream 输出输入流,FileOutputStream,FileInputStream写入读取流

    1.在java中stream代表一种数据流(源),javaio的底层数据元,---(想像成水龙头)2.任何有能力产生数据流(源)的javaio对象就可以看作是一个InputStream对象既然它能产生 ...

  8. 系统学习 Java IO (一)----输入流和输出流 InputStream/OutputStream

    目录:系统学习 Java IO ---- 目录,概览 InputStream 是Java IO API中所有输入流的父类. 表示有序的字节流,换句话说,可以将 InputStream 中的数据作为有序 ...

  9. Java的IO流以及输入流与输出流的异同

    一:流的基本概念:           Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.J ...

  10. java io流 创建文件、写入数据、设置输出位置

    java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; ...

随机推荐

  1. centos linux系统日常管理复习 CPU物理数逻辑核数,iftop ,iotop ,sar ,ps,netstat ,一网卡多IP,mii-tool 连接,ethtool速率,一个网卡配置多个IP,mii-tool 连接,ethtool速率 ,crontab备份, 第十八节课

    centos linux系统日常管理复习 物理CPU和每颗CPU的逻辑核数,uptime ,w,vmstat,iftop ,iotop ,sar ,ps,netstat ,一个网卡配置多个IP,mii ...

  2. 关于RxJava背压

    http://flyou.ren/2017/04/05/%E5%85%B3%E4%BA%8ERxJava%E8%83%8C%E5%8E%8B/?utm_source=tuicool&utm_m ...

  3. Flask系列(三)蓝图、基于DButils实现数据库连接池、上下文管理

    知识点回顾 1.子类继承父类的三种方式 class Dog(Animal): #子类 派生类 def __init__(self,name,breed, life_value,aggr): # Ani ...

  4. ffmpeg应用笔记

    官网 http://ffmpeg.org/ 应用手册 http://ffmpeg.org/documentation.html 雷霄骅专栏 https://blog.csdn.net/leixiaoh ...

  5. hadoop2.x Federation

    单Active NN的架构使得HDFS在集群扩展性和性能上都有潜在的问题,当集群大到一定程度后,NN进程使用的内存可能会达到上百G,NN成为了性能的瓶颈 常用的估算公式为1G对应1百万个块,按缺省块大 ...

  6. centos上yum安装nodeJS

    更新node.js各版本yum源 Node.js v8.x安装命令 curl --silent --location https://rpm.nodesource.com/setup_8.x | ba ...

  7. testng日志和报告

    TestNG是通过 Listeners 或者 Reporters 生成测试报告. Listeners,即 org.testng.ITestListener 的实现,能够在测试执行过程中发出各种测试结果 ...

  8. Spring笔记一

    什么是Spring spring (由rod johnson创建的一个开源框架) spring是一个开源框架,spring是于2003 年兴起的一个轻量级的java 开发框架,由rod johnson ...

  9. EF code first:列名 'Discriminator' 无效

    使用EF code first编写类继承的时候,出现列名 'Discriminator' 无效 . 字段中没有列名 'Discriminator' 原来在代码中,定义了一个类A,类B,B继承A,但是数 ...

  10. 2017ACM/ICPC Guangxi Invitational Solution

    A: A Math Problem 题意:给出一个n,找出有多少个k满足kk  <= n 思路: kk的增长很快,当k == 16 的时候就已经超过1e18 了,对于每一次询问,暴力一下就可以 ...