一、InputStream & outputStream

  Java字节流主要是以InputStream (输入流),outputStream(输出流)为基类,本身是抽象类不能创建实例,但是是字节流的基类,所以方法都可以使用,主要的方法有

  InputStream:

 int read();读取单个字节
int read(byte[] b); 最多读取b.length 字节存储在字节数组b中,返回读取的字节长度
int read(byte[] b, int start, int len);最多读取len字节,存放在数组b中,从b数组的第start位置开始存放

  OutputStream:

 void write(int c)
void write(byte[] b) 将b字节数组传入输出流中
void wirte(byte[] b, int start, int len); 将b字节数组中从start开始的len位输出到输出流

二、Reader & Writer

  Java字符流主要是以Reader(输入流) & Writer(输出流)为基类,本身为抽象类,主要提供的方法有:

  Reader:

 int read();读取单个字节
int read(char[] b); 最多读取b.length 字节存储在字节数组b中,返回读取的字节长度
int read(char[] b, int start, int len);最多读取len字节,存放在数组b中,从b数组的第start位置开始存放

  Writer:

 void write(int c)
void write(char[] b) 将b字节数组传入输出流中
void wirte(char[] b, int start, int len); 将b字节数组中从start开始的len位输出到输出流

ps.所有的输入流输出流需要关闭,尤其是字符流,因为字符流是在关闭的时候会将存在缓存中的数据输出/输入。

三、文件流

  Java 文件的操作主要有FileInputStream,FileOutStream,FileReader,FileWriter,其中使用如下

 package JavaLearning.JavaIO;

 import java.io.*;

 /**
* Created by ZLei on 2017/9/8.
*/
public class BaseStreamReaderTest {
public static void main(String[] args) throws IOException{
byte[] bytes = {'1','2'};
byte[] readBytes = new byte[1024];
// 文件字节输出流
FileOutputStream fout = new FileOutputStream("fileOutputStream.txt");
fout.write(bytes);
// 关闭流时,将文件中的缓存输出到文件中。
fout.close(); // 文件字节输入流
FileInputStream fis = new FileInputStream("fileOutputStream.txt");
int hasRead = fis.read(readBytes);
System.out.println(new String(readBytes,0,hasRead));
fis.close(); char[] charArr = {'张','z'};
char[] readArr = new char[127];
// 文件字符输出流
FileWriter fw = new FileWriter("fileWriter.txt");
fw.write(charArr);
fw.close(); // 文件字符输入流
FileReader fr = new FileReader("fileWriter.txt");
int len = fr.read(readArr);
fr.close();
System.out.println(new String(readArr,0,len)); }
}

【Java】JavaIO(二)、节点流的更多相关文章

  1. JAVA的节点流和处理流以及流的关闭顺序

    今天在编写hadoop程序的时候,用到了流的处理.关闭流的时候出现了问题: 代码: FSDataInputStream fsin = fs.open(new Path(filein)); FSData ...

  2. JAVA的节点流和处理流

    节点流:可以从或向一个特定的地方(节点)读写数据.如FileReader. 处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写.如BufferedReader.处理流的构造方 ...

  3. Java IO 节点流 ByteArrayInput/OutputStream

    Java IO 节点流 ByteArrayInput/OutputStream @author ixenos ByteArrayInputStream 包含一个内部缓冲区(字节数组byte[]),该缓 ...

  4. Java基础—IO小结(一)概述与节点流

    一.File类的使用  由于file类是一个基础类,所以我们从file类开始了解.(SE有完善的中文文档,建议阅读) 构造器: 常用方法:——完整方法请参见API API API!!! File做的是 ...

  5. Java-IO中的节点流和处理流

    理解好Java-IO中的节点流和处理流是理解Java输入.输出的关键基础,因此,了解节点流和处理流相关的知识点尤为重要. 1.定义 (1)节点流:可以从或向一个特定的地方(节点)读写数据.如FileR ...

  6. java 节点流(字符流,字节流)和包装流(缓冲流,转换流)

    结点流:直接对File类进行操作的文件流 package stream; import java.io.File; import java.io.FileNotFoundException; impo ...

  7. Java IO 节点流 FileInput/OutputStream

    Java IO 节点流 FileInput/OutputStream @author ixenos 节点流之 文件流 文件读写是最常见的I/O操作,通过文件流来连接磁盘文件,读写文件内容 1.文件的读 ...

  8. java io 节点流和处理流

    JAVA IO操作总结:节点流和处理流 JAVA IO操作总结--节点流和处理流  按照流是否直接与特定的地方(如磁盘.内存.设备等)相连,分为节点流和处理流两类. 节点流:可以从或向一个特定的地方( ...

  9. Java中的IO流(二)

    上一篇<Java中的IO流(一)>把学习IO流的字符流作了一下记录,本篇把字节流记录一下. 一,Java中的字节流 Java中的字节流的操作方式与字符流的操作方式大致相同,连方法名都是类似 ...

  10. java基础之IO流(二)之字符流

    java基础之IO流(二)之字符流 字符流,顾名思义,它是以字符为数据处理单元的流对象,那么字符流和字节流之间的关系又是如何呢? 字符流可以理解为是字节流+字符编码集额一种封装与抽象,专门设计用来读写 ...

随机推荐

  1. 织梦if标签

    {dede:field name='id' runphp='yes' } if(@me < 100 && @me >94) @me='xxxxxx';else @me='y ...

  2. 这些 .Net and Core 相关的开源项目,你都知道吗?(持续更新中...)

    最近更新时间2017-12-28 序列化 Json.NET http://json.codeplex.com/Json.Net是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Ne ...

  3. C# 在引用插件中 出现的问题| Csharp cite the plugin problem

    背景:使用C#操纵鼠标进行重复性的工作 background: using Csharp to handle the keyboard or mouse to do the repetitive wo ...

  4. 小峰servlet/jsp(2)

    一.jsp javaBean组件引入 <jsp:useBean id="实例化对象名称" scope="保存范围" class="类完整名称&q ...

  5. 接口测试maven管理

    接口测试框架选择 界面化工具,针对不会编码的测试人员: 1.Jmeter性能测试工具,不具备完备的接口测试框架功能 2.Robotframerwork 3.PostMan 推荐框架: ResrAssu ...

  6. javascript中setInterval制作跑马灯的效果

    html代码: javascript代码 <script type="text/javascript"> function scroll() { var title = ...

  7. Maven 配置tomcat插件

    使用tomcat插件来访问maven 1 先下载tomcat插件(在pom中配置) <!-- 配置Tomcat插件 --> <plugin> <groupId>or ...

  8. guess_age

    age_shanshan = 18count = 3num = 0while num < count: age = int(input("age:")) if age == ...

  9. Spark交互式工具spark-shell

    REPL Spark REPL Spark shell 下面我们启动一下(我这里搭建的是3节点集群) sc.后面按TAB键可以把提示调出来 查看hdfs上文件内容 这个数据从这里下载的 https:/ ...

  10. Xshell批量导入IP地址

    我的xshell被覆盖了~~~结果原来的host没了,很郁闷要一个一个添加,网上找了很长时间在Xshell中批量添加IP的文章,结果都不行. 最后找到了https://blog.netsarang.c ...