java-RandomAccessFile操作以及IO流简单使用
1.1RandomAccessFile--使用RAF读写基本类型数据,以及了解Raf的指针操作
write有相对应的写入基本类型的方法
void seek(Long pos)调整RAF指针位置,可以在写入时随时调整指针位置
raf.write(bs);写入一个字符串数组getBytes("UTF-8")--将字符串按照UTF-8解析成字符数组
raf.read(date);读取--参数为创建好的字节数组后将字节放在数组中返回参数为读取到的长度
1.2java IO流;IO流是用来读写数据的Java标准操作
流分为两个方向:
输入流输出流
输入流,inputstream:用于从数据源读取数据到程序中的流,负责读取数据操作
输出流,outputstream:用于从程序中将数据发送出去的流,负责写出数据操作
流进行了两个分类:
字节流,处理流
字节流:读写数据一定是建立在字节流的基础上的,是实际建立在数据源与程序间的“管道”,负责时间搬运数据
处理流:处理流不能独立存在,故名思议,用来处理其他流的流,处理其他流的目的是通过处理流可以简化对其处理流的读写操作(处理工作由处理流代劳)
文件流:文件流是一对低级流,文件输入流用于读取文件数据,文件输出流用于向文件中写入数据。
FileOutputStream支持两组常用的构造方法
FileOutputStream(String path)
FileOutputStream(File file)
创建针对指定的文件的输出流,默认是覆盖模式,即:若指定的文件已经存在,会将该文件所有的数据清除,然后通过该流写出的所有数据作为这个文件的数据保存
FileOutputStream(String path,boolean append)
FileOutputStream(File file,boolean append)
第二个参数为boolean值,若该值为true,则输出流为追加模式,即:该文件原有数据保留,通过当前流写出的所有数据会全部追加到文件的末尾。
文件输入流,用于读取文件中数据的流FileInputStream
缓冲流bufferedInputStrram缓冲字节输入流
bufferedOutputStrram缓冲字节输出流
缓冲流是一对高级流,功能是加快读写效率
缓冲流内部维护了一个字节数组所以实际上缓冲流还是靠提高读写的数据量减少实际的读写次数提高读写效率,bis.read()方法在第一次读取时实际读取了一组字节,并将第一个字节返回,当再次调用该方法读取一个字节时会将第二个字节直接返回。直到所有的字节都返回过后才会再次实际获取一组字节回来
缓冲输出流的缓冲区问题--flush();当需要强制将缓存中数据写入到内存中,使用这个方法可以实现,在调用缓冲流的close方法的时候,在方法的内部也调用了这个方法
对象流java.io.ObjectOutputStream
对象流是一对高级流,可以方便我们读写Java中的任何对象(对象与字节的转换工作有对象流完成)对象输出流,用于写出java中的对象(想对应的对象的输入流下次)
我是初学者,如有更新不好的,欢迎这位大神指出,谢谢大家!
更多精彩以后更新,转载注明!
java-RandomAccessFile操作以及IO流简单使用的更多相关文章
- Java 持久化操作之 --io流与序列化
1)File类操作文件的属性 1.File类的常用方法 1. 文件的绝对完整路径:getAbsolutePath() 文件名:getName() 文件相对路径:getPath() 文件的上一级目录:g ...
- Java文件操作(IO流)
File 在java中用来表示文件和文件夹的具体类. File的构建 File的常见方法 字节流: 对象序列化: 字符流: 转接流: InputStreamReader. ...
- Java IO流简单使用
Java IO流简单使用 也许是以前IO方面接触的比较少,我对于读和写的概念老是混淆. 趁着现在实习比较闲小结一下,我个人理解读和写都是针对程序,分别就是程序的输入和输出,或者叫读入写出. Java ...
- Java socket中关闭IO流后,发生什么事?(以关闭输出流为例)
声明:该博文以socket中,关闭输出流为例进行说明. 为了方便讲解,我们把DataOutputstream dout = new DataOutputStream(new BufferedOutpu ...
- java写文件读写操作(IO流,字节流)
package copyfile; import java.io.*; public class copy { public static void main(String[] args) throw ...
- 乐字节Java之file、IO流基础知识和操作步骤
嗨喽,小乐又来了,今天要给大家送上的技术文章是Java重点知识-IO流. 先来看看IO流的思维导图吧. 一. File 在Java中,Everything is Object!所以在文件中,也不例外! ...
- java学习(九) —— java中的File文件操作及IO流概述
前言 流是干什么的:为了永久性的保存数据. IO流用来处理设备之间的数据传输(上传和下载文件) java对数据的操作是通过流的方式. java用于操作流的对象都在IO包中. java IO系统的学习, ...
- 【Java】IO流简单分辨
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827509.html Java的IO流体系十分庞大,并且体系层次稍复杂,很容易记混或记错.在此,我把平时经常用 ...
- Java中常见的IO流及其使用
Java中IO流分成两大类,一种是输入流.全部的输入流都直接或间接继承自InputStream抽象类,输入流作为数据的来源.我们能够通过输入流的read方法读取字节数据.还有一种是输出流,全部的输出流 ...
随机推荐
- conda创建/移除虚拟环境
conda创建python虚拟环境 前言 conda常用的命令: conda list 查看安装了哪些包. conda env list 或 conda info -e 查看当前存在哪些虚拟环境 co ...
- php三行代码解决输入地址给出经纬度
//获取地址经纬度坐标 public function getAddress() { $ak = 'GPIrsdfZ-UNLRP-VBBDB-V3AGK-XL5KO-5DBNY'; $address ...
- NET架构师的基本职责
NET架构师的基本职责1 职责 对本公司大健康平台提出技术研究及可行性报告; 结合需求设计高扩展性.高性能.安全.稳定.可靠的技术系统; 可以通过配置实现业务需求的变化,跟踪并研究***并应用于产品; ...
- SAP APO - Architecture
SAP APO体系结构由多个组件组成-数据库,BI环境包含InfoCube和实时缓存. InfoCube是BI数据集市的一部分,实时缓存是您保留与计划和调度有关的所有数据的主要区域. 您可以在实时缓存 ...
- 【Python基础教程】三种常用、效率最高的Python字符串拼接方法
python字符串连接的方法,一般有以下三种: **方法1:**直接通过加号(+)操作符连接website=& 39;python& 39;+& 39;tab& 39; ...
- C4C UI Design背景色
- C++记录一
题目一: [描述] 比较两个整数之间的大于.小于.等于.不等于关系. [输入] 输入在一行中给出2个整数a和b. [输出] 分行输出整数a和b之间的大于.小于.等于.不等于关系. [输入示例] 5 3 ...
- zip格式文件编码检测
解压后文件名乱码 由于zip格式文件无编码存储的结构,因此解压时无法知道原先的编码. 当解压zip格式文件时使用的编码和原编码不一致时,就可能会出现解压后文件名乱码问题. 猜测编码 基于上述问题,需要 ...
- CD 从抓轨到搭建流媒体服务器 —— 以《月临寐乡》为例
2022-07-19 v0.0.1 由于某些原因,进了 Static World 的群并入坑了 月临寐乡 ,梦开始了.作为幻想乡的新人,也算是有了自己喜欢的社团.但是更细节的东西,狐狐脑子一下子塞不下 ...
- cordova 发送ajax请求的相关配置
<access origin="*" /> <preference name="scheme" value="http" ...