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

【转】Java I/O 使用基本原则

 
阅读更多

 

Java IO 的一般使用原则  

原则一、按数据来源(去向)分类

1 、文件:( 字节流 ) FileInputStream, FileOutputStream;

  ( 字符 ) FileReader, FileWriter

2 、Byte[]: ByteArrayInputStream, ByteArrayOutputStream( 字节流 )

3 、Char[]: CharArrayReader, CharArrayWriter( 字符流 )

4 、String: ( 字节流 )StringBufferInputStream, StringBufferOuputStream

    ( 字符流 ) StringReader, StringWriter

5 、网络数据流: ( 字节流 ) InputStream, OutputStream,( 字符流 )Reader, Writer

原则二、按是否格式化输出分

1 、要格式化输出: PrintStream, PrintWriter

原则三、按是否要缓冲分

1 、要缓冲: ( 字节流 )BufferedInputStream, BufferedOutputStream,

       ( 字符流 )BufferedReader, BufferedWriter

原则四、按数据格式分

1 、二进制格式(只要不能确定是纯文本的) : InputStream, OutputStream 及其所有带

Stream 结束的子类

2 、纯文本格式(含纯英文与汉字或其他编码方式): Reader, Writer 及其所有带 Reader,

Writer 的子类

原则五、按输入输出分

输入流,是把管子接到源,把流引入,引进,只能读。

输出流,是把管子接到源,把流引出,出口,只能写。

1 、输入: Reader, InputStream 类型的子类

2 、输出: Writer, OutputStream 类型的子类

原则六、特殊需要

1 、从 Stream 到 Reader,Writer 的转换类: Input Stream Reader ,

OutputStreamWriter

2 、对象输入输出: ObjectInputStream, ObjectOutputStream

3 、进程间通信: PipeInputStream, PipeOutputStream, PipeReader, PipeWriter

4 、合并输入: SequenceInputStream

5 、更特殊的需要: PushbackInputStream, PushbackReader,

  LineNumberInputStream, LineNumberReader

 

I/O 使用的一般准则步骤

1 ,考虑最原始的数据格式是什么:原则四

2 ,是输入还是输出:原则五

3 ,是否需要转换流:原则六第 1 点

4 ,数据来源(去向)是什么:原则一

5 ,是否要缓冲:原则三(特别注明:一定要注意的是 readLine() 是否有定义,有什么比

read, write 更特殊的输入或输出方法)

6 ,是否要格式化输出:原则二 

分享到:
评论

相关推荐

    Java I/O学习笔记: 磁盘操作 字节操作 字符操作 对象操作 网络操作 NIO & AIO Java I/O

    Java I/O学习笔记: 磁盘操作 字节操作 字符操作 对象操作 网络操作 NIO & AIO Java I/O Java是一种面向对象的编程语言,由Sun Microsystems于1995年推出。它是一种跨平台的语言,意味着可以在不同的操作系统上运行...

    Java_IO操作总结

    Java I/O操作是Java编程中不可或缺的一部分,它主要用于数据的输入和输出处理。在这个总结中,我们将深入探讨Java I/O的几个关键知识点。 首先,我们要理解I/O的基本概念。I/O,即Input/Output,指的是计算机系统与...

    Java计算器/记事本/万年历

    开发记事本功能,我们需要处理文本编辑、保存、打开等操作,这涉及到文件I/O操作,如File类的使用,以及BufferedReader和BufferedWriter进行读写文件。 其次,Java万年历的实现涉及到日期和时间处理。Java提供java....

    新版Java_IO精讲(推荐版)

    Java I/O支持两种基本的数据类型:字节流和字符流。 - **目标**:Java I/O的主要目标包括对文件、控制台和网络连接的操作。 - **文件**:用于读写本地文件系统中的文件。 - **控制台**:提供与终端用户交互的能力...

    Java程序使用字符界面与系统输入/输出界面进行数据通信

    Java程序设计中,与系统输入/输出界面进行数据通信是通过输入输出流(I/O流)实现的。I/O流是Java的核心特性之一,允许程序读取数据源(如键盘、文件)并写入数据目标(如显示器、文件)。在Java 2中,这个过程尤其...

    java读取dlt645所需文件

    1. **Java I/O流**:Java的I/O流库是读取文件的基础。你需要熟悉InputStream、Reader、BufferedReader等类,它们提供了读取文件的接口。对于二进制文件,如DLL,使用FileInputStream;对于文本文件,可以使用...

    Java版文件系统

    然而,通过使用Java提供的类库和API,我们可以构建一个模拟的文件系统,它能够进行基本的文件操作,如创建、读取、写入和删除文件。以下是一些关于这个话题的关键知识点: 1. **Java I/O流**:Java的I/O流是实现...

    疯狂java程序员的基本修养

    7. **I/O与NIO**:Java的I/O流系统用于处理输入输出操作,而NIO(非阻塞I/O)提供了一种高效的数据传输方式。理解并运用Buffer、Selector和Channel,可以优化数据处理性能。 8. **数据库操作**:Java JDBC(Java ...

    JavaIO性能分析[定义].pdf

    在优化I/O性能时,应遵循一些基本原则,如避免不必要的磁盘访问、避免过多的系统调用、减少方法调用以及避免单独处理字节和字符。使用缓冲技术是其中一种有效的策略。例如,方法2(使用`BufferedInputStream`)优于...

    Java-从Decorator,Adapter模式看Java/IO

    Java的IO库遵循了输入-输出对称性和byte-char对称性原则,确保了在处理输入流和输出流时的统一性。输入-输出对称性体现在InputStream和OutputStream,Reader和Writer这两对类上,它们各自构成了平行的等级结构,分别...

    JAVA高级知识点整理.rar

    Java作为一门广泛使用的编程语言,其高级特性是程序员进阶必备的知识。本资料"JAVA高级知识点整理.rar"主要涵盖了多线程、虚拟机、Java IO/NIO以及Java集合框架等核心主题,旨在帮助开发者深入理解Java平台的高级...

    Core Java 2 Volume I - Fundamentals, 6th Edition

    这本书涵盖了Java语言的核心概念,包括语法、数据类型、控制结构、类与对象、异常处理、输入/输出(I/O)、多线程以及集合框架等重要主题。 1. **Java语法基础**:本书首先介绍了Java的语法基础,包括变量声明、常量...

    java五子棋源代码

    * Java中的I/O操作:Java中用于实现输入/输出操作的API,包括FileInputStream、FileOutputStream、PrintStream等。 * 数据流:Java中的数据流机制,包括InputStream、OutputStream、Reader、Writer等。 6. Java异常...

    java输入输出流.ppt

    Java输入输出流(I/O流)是Java编程中不可或缺的一部分,它主要用于程序与外部资源之间的数据传输。在Java中,I/O流的概念被用来抽象各种输入源和输出目标,包括键盘、显示器、文件、网络连接等。I/O流的设计遵循...

    Java操作系统磁盘调度算法

    例如,使用Java NIO(非阻塞I/O)库,可以创建高效的I/O服务程序,这些程序能够智能地调度磁盘访问,降低等待时间,提高系统吞吐量。 总结来说,Java虽然不直接实现磁盘调度,但对这些算法的理解可以帮助开发者编写...

    JAVA实现的C/S模式的聊天室程序代码

    - **多路复用**:可能使用了Java的`java.nio`包,提供非阻塞I/O和选择器,以处理多个并发连接。 4. **多线程**: - **并发处理**:为了同时处理多个用户的请求,服务器端需要使用多线程技术,每个客户端连接对应...

    操作系统作业 (pv,作业管理,等5个的Java实现)

    Java提供了丰富的I/O API,如InputStream和OutputStream用于字节流,Reader和Writer用于字符流,以及NIO(New I/O)库提供非阻塞I/O操作。 在实现这些操作系统概念时,Java的并发和I/O库提供了强大的支持,使开发者...

    Java 高性能系统常见设计与优化

    在设计和优化高性能系统时,需要遵循一些基本原则,如降低硬盘 I/O 访问次数、降低进程间通信 I/O 次数、降低 CPU 和内存等资源的占用等。 Java VM 优化是高性能系统设计和优化的重要部分。可以通过调整 JVM 的参数...

Global site tag (gtag.js) - Google Analytics