`

java io(字符、字节流)基础

阅读更多

     1、流是一组有起点有终点的顺序字节集合,抽象了数据传输,抽象为许多类。

    2、字符流和字节流

    字节流处理所有数据类型,字符流只处理字符类型的数据。

    字节流不会使用到缓冲区的,文件本身的直接操作。

   优先使用字节流(硬盘上的所有数据都是以字节的形式存储的)。

  3、io流对象

    A、 InputStream是所有输入字节流的父类,是抽象的。子类有很多介质流,根据不同的介质(StringBuffer,数组,本地文件)读取数据。System.in

     核心代码

      

 File f=new File("文件路径");
InputStream in =new FileInputStream(f);//父类的引用指向子类的对象
byte[]b=new byte[1024];//用数组存文件的字节
int len=in.read(b);//len为读入的长度
in.close();//关闭字节流
System.out.println(new String(b,0,len));//将字节转化为字符串

 B、OutputStream 是所有的输出字节流的父类,它是一个抽象类。

  核心代码

File f=new File(文件路径);
OutputStream out=new FileOutputStream(f);
// OutputStream out =newFileOutputStream(f,true);//true表示追加模式,否则为覆盖
String str="sdfghgghmgfgfhm";
byte[] b=str.getBytes();//将字符串转化为字节
  for (int i = 0; i < b.length; i++) {
           out.write(b[i]);
       }
       out.close();

 C、Reader是所有的输入字符流的父类,介质流为CharReader,StringReader,从char数组和String里提取数据。

 

InputStreamReader 是一个连接字节流和字符流的桥梁,它将字节流转变为字符流。FileReader可以说是一个达到此功能、常用的工具类,在其源代码中明显使用了将FileInputStream 转变为Reader 的方法。我们可以从这个类中得到一定的技巧。Reader 中各个类的用途和使用方法基本和InputStream 中的类使用一致

   核心代码:

  

File f=new File(文件名);
  char[] ch=new char[100];
  Reader reader=new FileReader(file);
int temp=0;
int count=0;
while((temp=reader.read())!=-1)
{
ch[count++]=(char)temp;
}
read.close();
System.out.println(new String(ch,0,count));

 D、BufferedReader 很明显就是一个装饰器,它和其子类负责装饰其它Reader 对象。

 实例,实现读取中文的字节流。

核心代码

  BufferedReader buf = new BufferedReader(
                new InputStreamReader(System.in));//将字节流转为字符流,同时可以缓冲
       String str = null;
       System.out.println("请输入内容");
       try{
           str = buf.readLine();
       }catch(IOException e){
           e.printStackTrace();
       }
       System.out.println("你输入的内容是:" + str);

 

分享到:
评论

相关推荐

    Java IO字符流和字节流

    ### Java IO字符流和字节流详解 #### 一、引言 在Java编程中,输入输出(简称IO)操作是十分重要的一个方面。通过IO操作,我们可以读取文件、网络数据、用户输入等,也可以将数据写入到文件、网络、控制台等。Java...

    Java IO 字节流 字符流

    Java IO系统分为两大类:字节流和字符流。字节流主要用于处理任何类型的原始数据,如图片、音频文件或者二进制文件,而字符流则专注于处理基于文本的数据。本文将深入探讨这两类流的原理、用途以及它们之间的关联。 ...

    JAVA IO流缓冲字节流缓冲字符流等流经典代码示例加注释总结.rar

    2、常用21个IO流:FileWriter、FileReader、...3、JAVA IO流经典代码示例,示例从易到难。代码功能涉及字节、字符、字符串、文本文件、图片、音频、视频。演示错误用法和经典用法。 4、代码的结构可查看README文件。

    Java字符流和字节流

    ### Java字符流和字节流详解 #### 一、引言 在Java中,I/O流主要用于处理输入输出操作,包括文件读写等。根据处理数据类型的不同,Java I/O流主要分为字节流和字符流两大类。字节流处理的是8位的字节数据,而字符流...

    JavaIO实例_字节流_字符流_缓冲流_转换流IODemo

    在Java中,IO流分为两大类:字节流和字符流,每种流又有输入流和输出流之分,分别用于数据的读取和写入。 1. **字节流**: - 字节流处理的是8位的字节数据,是最基本的流类型。Java中的`InputStream`和`...

    JavaIO实例|字节流|字符流|缓冲流|转换流IODemo

    本教程将详细介绍Java IO中的字节流、字符流、缓冲流以及转换流,并通过IODemo实例来展示它们的用法。 ### 1. 字节流 字节流是Java中最基础的流类型,用于处理以字节为单位的数据。字节流分为输入流(InputStream...

    IO各种操作文件,字符流、字节流等

    在Java IO中,主要有两种流的概念:字符流(Character Stream)和字节流(Byte Stream)。它们是处理数据的基本方式,适用于不同场景。 字符流主要处理基于字符的数据,如文本文件,它包括Reader和Writer两个抽象...

    IO流 javaio java 流

    Java IO流分为两大类:字符流(Character Stream)和字节流(Byte Stream)。字符流处理单个字符,而字节流处理8位的字节序列。它们又可以进一步细分为输入流(InputStream/Reader)和输出流(OutputStream/Writer)...

    javaIO字符流文件写入总结共1页.pdf.zip

    Java IO字符流是Java平台中用于处理文本数据的重要部分,特别是在进行文件读写操作时。字符流处理单个字符,适合处理基于字符编码(如UTF-8、GBK等)的文本文件。本篇将深入探讨Java IO中的字符流以及如何进行文件...

    Java io输入输出流及字符集

    它们接受一个字符集参数,用于将字节流按指定字符集转换为字符流,反之亦然。 六、文件操作 Java的File类提供了文件和目录操作的基本功能,如创建、删除、重命名文件和目录。 七、内存流 ByteArrayInputStream和...

    JavaIO字节输出流的总结共6页.pdf.zip

    1. **字节流基础** - Java中的字节流主要由两个基类构成:`java.io.OutputStream`和`java.io.InputStream`。其中,`OutputStream`是所有字节输出流的父类,提供了基本的字节写入方法。 - 字节流主要用于处理二进制...

    io流详解,字符流和字节流代码

    本文件包“io流详解,字符流和字节流代码”显然是针对Java IO流的深入学习资源,包含了代码示例和可能的可视化解释。 IO流分为两大类:字节流(Byte Stream)和字符流(Character Stream)。字节流处理的是8位的数据...

    java字节流和字符流[整理].pdf

    转换流:在字节流和字符流之间,Java提供了解决两者不兼容问题的转换流,即InputStreamReader和OutputStreamWriter。InputStreamReader是字节输入流到字符输入流的桥梁,而OutputStreamWriter则是字节输出流到字符...

    IO流学习(字节流 字符流 文本流)!

    总的来说,IO流是Java编程中不可或缺的一部分,理解和熟练运用字节流、字符流和文本流能帮助我们高效地处理数据输入和输出,为各种复杂的应用场景提供支持。在实际开发中,要根据数据类型和需求选择合适的流,并利用...

    Java基础11-(字节流、字符流)

    Java的IO流是按照数据的流向分为输入流和输出流,按照数据类型分为字节流和字符流。字节流处理的是二进制数据,适用于任何类型的文件,包括文本文件和非文本文件(如图片、音频、视频等)。字符流则用于处理字符数据...

    Java字节流与字符流的介绍.pdf

    Java 字节流与字符流的介绍 Java 中的流操作可以分为两种:字节流和字符流。字节流是指以 byte 为单位进行读写操作的流,而字符流是指以 char 为单位进行读写操作的流。 字节流的介绍 字节流的所有读操作都继承自...

    java io流 案例

    Java IO库提供了丰富的类和接口来支持不同类型的流,包括字节流、字符流、对象流、缓冲流、转换流以及过滤流等。 字节流(Byte Stream)是处理原始二进制数据的流,分为输入流和输出流。InputStream和OutputStream...

    java字节流和字符流

    Java中的字节流和字符流是IO操作中的两种基本类型,它们主要用于数据的输入和输出。字节流处理的数据单位是字节,而字符流处理的是Unicode字符。 字节流: 字节流主要由两个核心类构成:`InputStream`和`...

    Java IO流 总结

    在Java IO流中,转换流是指将字节流转换为字符流或将字符流转换为字节流的过程。转换流可以解决字符集编码问题。 a) 输入流:InputStreamReader----&gt;解码 InputStreamReader是将字节流转换为字符流的输入流,负责...

    Java的IO流讲解代码: File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型

    该代码源码资源是一个用于讲解Java IO流的示例代码库。它包含了常见的IO类和方法的使用...通过研究这些代码示例,读者将能够了解如何使用不同类型的IO类来进行文件读写、字符流、字节流、网络传输等各种常见的IO操作。

Global site tag (gtag.js) - Google Analytics