/        标准输入输出流:
                直接类名调用   一经创建无法改变
                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. PAT 1073 Scientific Notation[字符串处理][科学记数法]

    1073 Scientific Notation(20 分) Scientific notation is the way that scientists easily handle very lar ...

  2. PAT 1080 Graduate Admission[排序][难]

    1080 Graduate Admission(30 分) It is said that in 2011, there are about 100 graduate schools ready to ...

  3. with语句与__enter__,__exit__

    class Foo(object): def func(self): print("func") pass def __enter__(self): print("ent ...

  4. 小论“Boolean参数作为入参”的函数

    <Clean Code>一书中对于如何写好函数有着很动人的描写,其中对于函数参数的建议有如下两点: 函数参数的数量应该尽可能少 给一个一元函数传入bool类型的参数很"罪恶&qu ...

  5. Could not load file or assembly 'Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, ...

    使用oracle数据库一个多月依赖这问题一直都得不到解决,最近任务不是很忙了,所以决定把这问题解决掉.写一篇文章做记录. 以上错误主要是net程序oracle数据库使用了Microsoft Enter ...

  6. http之http1.0和http1.1的区别

    下面主要从几个不同的方面介绍HTTP/1.0与HTTP/1.1之间的差别,当然,更多的内容是放在解释这种差异背后的机制上. 1 可扩展性 可扩展性的一个重要原则:如果HTTP的某个实现接收到了自身未定 ...

  7. MyBatis—动态SQL

    什么是动态SQL? 1.基于OGNL表达式 2.完成多条件查询的逻辑 3.动态SQL的主要元素 (if,trim,where,set,choose,foreach) where标签 可以根据if中是否 ...

  8. [LeetCode]206. Reverse Linked List(链表反转)

    Reverse a singly linked list. click to show more hints. Subscribe to see which companies asked this ...

  9. Learning Query and Document Similarities from Click-through Bipartite Graph with Metadata

    读了一篇paper,MSRA的Wei Wu的一篇<Learning Query and Document Similarities from Click-through Bipartite Gr ...

  10. Entity Framework Code First级联删除(转)

    使用Data Annotations: 如果我们要到一对主从表增加级联删除,则要在主表中的引用属性上增加Required关键字,如: public class Destination { public ...