java开发知识IO知识之输入输出流以及文件

java开发知识IO知识之输入输出流以及文件

一丶流概述

流十一组有序的数据序列.根据操作的类型,可以分为输入流跟输出流两种. IO(input/output)输入/输出流提供了一条通道程序.可以使用这条通道把源的字节序列送到目的地

简单来说. 就是操作二进制. 二进制提供了读写功能. 写就是输出. 读就是输入.

输入输出流图示:

输入流讲解 InputStream类.

1. 输入流以及类层次结构

输入流就是从"文件" 读取到内存. 这个文件是抽象的.意思就是不管什么内容从硬盘也好.任何地方读到内存就是输入流.
首先InputStream是抽象类. 是素有字节输入流的父类.

抽象类中的方法:

read(); 从输入流中读取数据的下一个字节. 返回0~255范围内的int字节. 也就是读取一个字节.如果到了末尾.返回-1

read(byte[] b); 从输入流中读取一个字节数组大小.

mark(int readlimit); 输入流当前位置放置一个标记. 参数的意思就是告诉输入流在标记位置失效之前允许读取的字节数.

reset(); 将输入指针.返回到当前所做的标记处. 意思就是移动文件指针.移动到你标记的地方.

skip(long n); 跳过n个字节.并返回实际跳过的字节数.

markSupported(); 如果当前流支持 mark()/reset() 操作就会返回true

close(); 关闭流句柄.释放系统资源.

InputStream类的层次结构

我们可以看到.有一个FileInputStream 这个类就是操作文件的.

2.文件操作.使用输入流读取

我们可以使用FileInputStream从一个文件中读取字节到内存.

实现代码

    try {
            FileInputStream in = new FileInputStream("1.txt");
            byte szbuf[] = new byte[10];
            in.read(szbuf);//读取到字节数组中
            System.out.println(new String(szbuf));
        } catch (Exception e) {
            // TODO 自动生成的 catch 块
            e.printStackTrace();
        }

原文地址:https://www.cnblogs.com/iBinary/p/9831096.html

时间: 2024-08-27 19:43:26

java开发知识IO知识之输入输出流以及文件的相关文章

java开发必学知识:动态代理

目录 1. 引言 2. 代理模式及静态代理 2.1 代理模式说明 2.2 静态代理 2.3 静态代理局限性 3. 动态代理 3.1 JAVA反射机制 3.2 JDK动态代理 3.2.1 JDK动态代理 3.2.2 JDK动态代理与限制 3.4 CGLIB动态代理 4. 动态代理在Spring的应用:AOP 4.1 AOP 概念 4.2 AOP编程 4.2.1 引入aop依赖 4.2.2 定义切面.切点与通知 5. 总结 参考资料 往期文章 一句话概括:java动态代理通过反射机制,可在不修改原代

java输入输出流及文件操作

*Author:Yuanhonglong *Date:2013-11-29 *1948281915package mine.file.Read_Write;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileReader;import java.io.IOException;import java.io.InputStream;import java

输入输出流复制文件

/** * 输入输出流复制文件 * 问题1:printByteArr 打印的数据49,50 是什么 * 读的文件转化成子节数组,文本中的1不代表读出的子节也是1 * * @throws IOException */ @Test public void test4() throws IOException { File srcFile = new File("F://file/test.txt"); FileInputStream fileInputStream = new FileIn

第40节:Java中的IO知识案例

流是一连流串的字符,是信息的通道,分输出流和输入流. IO的分类 第一种分:输入流和输出流. 第二种分:字节流和字符流. 第三种分:节点流和处理流. Java中流的分类: 流的运动方向,可分为输入流和输出流两种. 流的数据类型,可以分为字节流和字符流. 输入流类都是抽象类InputStream(字节输入流)或抽象类Reader类(字符输入流)的子类. 输出流类都是抽象类OutputStream(字节输出流)或抽象类Writer类(字符输出流)的子类. 输入流从文件输入为读取,输出流从文件输出为写

Java中IO流,输入输出流概述与总结

总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类: 而所有输出流都是抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类. [首先需要明白的是:流是干什么的???(为了永久性的保存数据)   根据数据流向的不同分为输入流和输出流:   根据处理数据类型的不同分为字符流和字

java中IO流,输入输出流的概述

1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类: 而所有输出流都是抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类. [首先需要明白的是:流是干什么的???(为了永久性的保存数据)   根据数据流向的不同分为输入流和输出流:   根据处理数据类型的不同分为字符流和字节流: ] [然后需要明白的是输入模式和输出

Java实现文件写入——IO流(输入输出流详解)

输入输出的重要性:     输入和输出功能是Java对程序处理数据能力的提高,Java以流的形式处理数据.流是一组有序的数据序列,根据操作的类型,分为输入流和输出流. 程序从输入流读取数据,向输出流写入数据.Java是面向对象的程序语言,每一个数据流都是一个对象,它们提供了各种支持“读入”与“写入”操作的流类. Java的输入输出功能来自java.io 包中的InputStream类.OutputStream类.Reader类和Writer类以及继承它们的各种子类. (一)解析文件处理的奥秘 1

01 java开发前小知识

1.常见的dos命令 盘符: 进入指定的盘符下. dir : 列出当前目录下的文件以及文件夹 md : 创建目录 rd : 删除目录    注意:rd不能删除非空的文件夹,而且只能用于删除文件夹. cd : 进入指定目录 cd.. : 退回到上一级目录 cd \ : 退回到根目录 echo "hello java">a.txt  写入文本到指定文件  type a.txt 显示文件内容命令 del : 删除文件    注意:不能删除文件夹,只能删除文件. exit : 推出dos

Java输入输出流和文件操作

操作系统中的文件和目录概念 文件与文件系统 文件是信息的一种组织形式,是存储在外部存储介质上的具有标志名的一组相关信息集合. 文件系统用文件概念来组织和管理存放在各种介质上的信息.文件系统提供目录机制实现文件的"按名存取". 目录结构与文件检索 目录是文件系统组织和管理文件的基本单位,目录中保存它所管理的每个文件的基本属性信息(成为文件目录项或文件控制块).除了文件外,目录中还可以包含子目录和文件,子目录中还可以再有子目录和文件,由此构成目录的多级树状结构.文件是这种树状结构的叶子节点