Java IO 一

Java IO概览

  输入输出的概念


从上图可以看出,当我们从一个源文件读取数据,并写输入程序中时,这时我们称之为输入/读取。

                  当我们从一个程序中取出数据,并写入文件中时,这时我们称之为输出/写。



为了能够让程序员更好的理解和使用输入输出,针对不同操作类型对应不同的类。

  • File Access    文件

  • Network Access   网络

  • Internal Memory Buffer Access   网络缓存

  • Inter-Thread Communication (Pipes)  网络 -线程通道

  • Buffering   缓存

  • Filtering    存储

  • Parsing  解析

  • Reading and Writing Text (Readers / Writers)  读写文档

  • Reading and Writing Primitive Data (long, int etc.)   读写基本数据

  • Reading and Writing Objects  读写对象

 Java IO Class Overview Table

  Byte BasedCharacter Based
  Input Output Input Output
Basic InputStream OutputStream Reader
InputStreamReader
Writer
OutputStreamWriter
Arrays ByteArrayInputStream ByteArrayOutputStream CharArrayReader CharArrayWriter
Files FileInputStream
RandomAccessFile
FileOutputStream
RandomAccessFile
FileReader FileWriter
Pipes PipedInputStream PipedOutputStream PipedReader PipedWriter
Buffering BufferedInputStream BufferedOutputStream BufferedReader BufferedWriter
Filtering FilterInputStream FilterOutputStream FilterReader FilterWriter
Parsing PushbackInputStream
StreamTokenizer
  PushbackReader
LineNumberReader
 
Strings     StringReader StringWriter
Data DataInputStream DataOutputStream  
Data - Formatted   PrintStream   PrintWriter
Objects ObjectInputStream ObjectOutputStream    
Utilities SequenceInputStream
     


具体IO操作

Java IO: Files

  java 对文件的一些操作

  1. Reading files

  2. Writing files

  3. Random access to files

  4. File and Directory Info Access

Reading Files via Java IO

如你想读取一份文件内容,那请用FileInputStream,要是只想读取文件的一部分那RandomAccessFile.再好不过。

Writing File via Java IO

向文件写入内容,如果是从头写到尾,那请用FileOutputStream如果不是,比如只想在文件最后写入,那请用RandomAccessFile.


Java IO: Pipes

 

java虚拟机提供了一个管道,能够使二个线程进行通信,这个管道可能是共同的源文数据或是目标数据。

Java的管道机制和Unix / Linux有一点区别,在Unix / Linux中二个进程运行在不同的内存空间上,但能在管道上进行通信。在Java中要进行通信的双方必需在同一个进程中不同的线程上。

Creating Pipes via Java IO

Java中用PipedOutputStream and PipedInputStream classes类来建立管道。

看下面一个管道通信的例子:

PipedOutputStream output = new PipedOutputStream();
PipedInputStream input = new PipedInputStream(output);

本文翻译出自:http://tutorials.jenkov.com/java-io/overview.html















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值