`
wang_zhi_peng2007
  • 浏览: 251331 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java常用类解析二:IO系统输入输出类

 
阅读更多

    InputStream的作用是用来表示那些从不同数据源产生输入的类。OutputStream决定了输出所要去往的目标

       数据源                             对应的类(都继承自InputStream)

(1)字节组                        ByteArrayInputStream [ByteArrayOutputStream]

(2)String对象                   StringBufferInputStream(已弃用)

(3)文件                           FileInputStream  [FileOutputStream]

(4)“管道”                     PipedInputStream  [PipedOutputStream]

(5)由其它种类的流组成的序列    SequenceInputStream

(6)其他数据源,如Internet

示例:

import java.io.ByteArrayInputStream;  
import java.io.ByteArrayOutputStream;  
import java.util.Arrays;  
/* 
 * ByteArrayInputStream(ByteArrayOutputStream)表示从字节数组产生输入(输出) 
 * 这个类其实就是对一个字节数组进行操作,把这个字节数组看成一个缓冲区 
 * 关闭方法是一个空方法,关闭后不影响其他方法 
 * 可以将数组定位到指定位置开始读/写,可以将数组从头开始读/写,可以查看数组还有几个字节可用 
 * 可以在某个位置做标记,可以返回到标记位置进行读/写 
 */  
public class ByteArrayInputStreamDemo {  
    public static void main(String[] args) {  
        // 输入流缓冲区(假设已经有若干字节)   
        byte[] inputBuff = new byte[] { 1, 2, 3, 'a', 'b', 'c', 'd', 'e', 'f' };  
        byte[] result = new byte[20];  
        ByteArrayInputStream inputStream = new ByteArrayInputStream(inputBuff);  
        // 将缓冲区的字节读入result数组并输出result   
        inputStream.read(result, 0, 20);  
        System.out.println(Arrays.toString(result));  
        // 将result数组写入输出流   
        ByteArrayOutputStream outStream = new ByteArrayOutputStream();  
        outStream.write(result, 0, 20);  
        System.out.println(Arrays.toString(outStream.toByteArray()));  
    }  
  
}  

 

import java.io.File;  
import java.io.FileInputStream;  
import java.io.FileNotFoundException;  
import java.io.FileOutputStream;  
import java.io.IOException;  
  
/* 
 * FileInputStream从文件中产生输入流,FileOutputStream 
 * 把输出流输出到文件。读/写、打开和关闭都是调用本地方法 
 */  
public class FileInputStreamDemo {  
    public static void main(String[] args) throws IOException {  
        FileInputStream inputStream = null;  
        try {  
            inputStream = new FileInputStream(new File("file/bb.dat"));  
        } catch (FileNotFoundException e) {  
            e.printStackTrace();  
        }  
        // 读到一个字节数组   
        byte[] result = new byte[500];  
        // int b;   
        // while ((b = inputStream.read()) != -1)//读一个字节   
        // System.out.print((char) b);   
        inputStream.read(result);  
        // System.out.println(Arrays.toString(result));   
        inputStream.close();  
        FileOutputStream outputStream = null;  
        // true表示以追加的形式打开   
        outputStream = new FileOutputStream("file/bb.dat", true);  
        // 写入   
        outputStream.write((int) 'A');  
        outputStream.write(result);  
        outputStream.close();  
    }  
}  

 

 

分享到:
评论

相关推荐

    java常用类解析及示例及一些工具类源代码

    主要讲解了System类、Object类、Arrays类、Cloneable接口、IO系统输入输出类及装饰类、IO系统文本读写工具类、IO系统二进制读写工具类、对象序列化工具类、File类及文件搜索工具类、java异常机制及自定义异常类、...

    java IO 类层次图

    Java IO系统提供了丰富的类来支持不同类型的输入输出操作,包括但不限于文件读写、网络通信等。本文将通过分析一张清晰明了的Java IO类层次图,详细介绍Java IO体系中的主要类及其关系。 #### 二、Java IO 类层次...

    IO/输入输出

    本文将深入探讨“IO/输入输出”这一主题,并结合标签“源码”和“工具”,来解析Java语言中的IO操作。 首先,我们要明白IO的基本原理。输入(Input)是获取数据的过程,例如键盘打字、鼠标点击或从文件读取数据;而...

    java常用的工具类整理28个

    10. **java.io.FileInputStream**和**java.io.FileOutputStream**:基本的文件输入输出流,用于读取和写入文件。 11. **java.io.FileReader**和**java.io.FileWriter**:用于读取和写入文本文件,基于字符流。 12....

    Java考试前总结(包含io输入输出流/线程/特殊for语句/文件读写的总结)

    总结来说,理解和掌握Java的I/O流可以帮助你有效地处理数据输入输出,线程管理则让你能够编写并发程序,特殊for语句简化了代码,而文件读写则是日常开发的基本技能。这些知识点的掌握程度直接影响到你在Java考试中的...

    Java IO 工具类大全

    以上就是Java IO工具类的详细介绍,理解并熟练运用这些工具,将极大提升你在处理数据输入输出时的效率和灵活性。在实际编程中,根据需求选择合适的工具类,结合Java的异常处理机制,可以编写出稳定可靠的IO程序。

    Java IO处理类的汇总

    Java IO处理类是Java平台中用于输入输出操作的核心部分,它允许程序与各种类型的输入源(如文件、网络连接)以及输出目标(如显示器、打印机)进行交互。本篇文章将全面解析Java IO处理类,包括基本概念、常用类库、...

    java io完全解析

    Java IO(输入输出)是Java语言中处理数据流的API集合,它允许Java程序进行数据的读取和写入操作。本知识点的解析将围绕Java IO的基础和高级特性进行展开,为Java初学者提供清晰的学习路径。 首先,Java IO提供了两...

    完整版 杭州电子科技大学JAVA语言程序设计 JAVA_07 IO输入输出(共30页).ppt

    Java语言中的IO输入输出是程序与外部数据交互的重要机制,主要涉及文件操作、流的概念以及相关的类和接口。本部分讲解的是杭州电子科技大学JAVA语言程序设计课程中的第七章,即"文件I/O输入/输出"。 1. **File类**...

    Java_IO完全总结

    Java IO系统是Java平台标准库中的一个重要组成部分,主要用于处理输入输出操作。Java IO系统主要包括两个包:`java.io`和`java.nio`(New IO),其中`java.io`提供了一系列基于流的I/O操作接口与实现类,而`java.nio...

    JAVA输入输出流详细解读

    ### JAVA输入输出流详细解读 #### I/O类体系与流分类 在JAVA的I/O类体系中,所有的基础IO类都被归置于`java.io`包内,而那些新实现的IO类则分布在以`java.nio`开头的一系列包中。在深入探讨前,我们先来了解`java....

    java常用工具类整理

    2. **java.io.*** 包:提供输入输出流处理,包括文件读写、网络通信、序列化等。例如,`FileInputStream`和`FileOutputStream`用于文件操作,`BufferedReader`和`PrintWriter`则用于文本数据的读写。 3. **java.nio...

    彻底明白Java的IO系统

    Java的输入/输出(Input/Output,简称I/O)系统是Java编程中不可或缺的一部分,它提供了与外部设备交互的能力,包括...通过深入学习和实践,你可以更高效地处理数据输入输出,优化程序性能,实现复杂的数据交互需求。

    IO流、Xml解析

    IO流还包括输入流(Input Stream)、输出流(Output Stream)、缓冲流(Buffered Stream)、转换流(Converter Stream)以及对象流(Object Stream)等子类,它们各自有不同的功能和应用场景。例如,FileInputStream...

    Java IO 编程集合

    Java IO编程是Java平台中处理输入输出操作的重要组成部分,它提供了丰富的类库,使得开发者能够高效地进行数据的读取、写入、流的管理和转换。在这个集合中,我们主要探讨的是Java IO在文件读写方面的实践应用。 一...

    Java项目:星际争霸游戏(java+swing+awt界面编程+IO输入输出流+socket+udp网络通信)

    本项目"星际争霸游戏"就是这样一个例子,它巧妙地融合了Java Swing和AWT库进行界面设计,利用IO输入输出流处理数据存储,以及通过Socket和UDP协议实现网络通信,从而打造了一个具备单人模式和多人合作模式的游戏平台...

    Java教程 Java常用类

    本文将深入解析Java教程中提到的部分关键类,包括`java.applet`、`java.awt`、`java.io`、`java.lang`、`java.net`以及`java.util`等包下的常用类,特别关注`java.lang.String`类及其相关操作。 #### java.applet包...

    最最常用的 100 个 Java类分享

    2. `java.io.IOException`:这是所有I/O异常的基类,用于处理输入/输出操作中的错误。 3. `java.util.List`:List接口定义了有序的集合,允许有重复元素,并提供了按索引访问的方法。 4. `java.util.HashMap`:...

Global site tag (gtag.js) - Google Analytics