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流简单使用的更多相关文章

  1. Java 持久化操作之 --io流与序列化

    1)File类操作文件的属性 1.File类的常用方法 1. 文件的绝对完整路径:getAbsolutePath() 文件名:getName() 文件相对路径:getPath() 文件的上一级目录:g ...

  2. Java文件操作(IO流)

     File 在java中用来表示文件和文件夹的具体类. File的构建 File的常见方法   字节流:       对象序列化:   字符流:     转接流: InputStreamReader. ...

  3. Java IO流简单使用

    Java IO流简单使用 也许是以前IO方面接触的比较少,我对于读和写的概念老是混淆. 趁着现在实习比较闲小结一下,我个人理解读和写都是针对程序,分别就是程序的输入和输出,或者叫读入写出. Java ...

  4. Java socket中关闭IO流后,发生什么事?(以关闭输出流为例)

    声明:该博文以socket中,关闭输出流为例进行说明. 为了方便讲解,我们把DataOutputstream dout = new DataOutputStream(new BufferedOutpu ...

  5. java写文件读写操作(IO流,字节流)

    package copyfile; import java.io.*; public class copy { public static void main(String[] args) throw ...

  6. 乐字节Java之file、IO流基础知识和操作步骤

    嗨喽,小乐又来了,今天要给大家送上的技术文章是Java重点知识-IO流. 先来看看IO流的思维导图吧. 一. File 在Java中,Everything is Object!所以在文件中,也不例外! ...

  7. java学习(九) —— java中的File文件操作及IO流概述

    前言 流是干什么的:为了永久性的保存数据. IO流用来处理设备之间的数据传输(上传和下载文件) java对数据的操作是通过流的方式. java用于操作流的对象都在IO包中. java IO系统的学习, ...

  8. 【Java】IO流简单分辨

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827509.html Java的IO流体系十分庞大,并且体系层次稍复杂,很容易记混或记错.在此,我把平时经常用 ...

  9. Java中常见的IO流及其使用

    Java中IO流分成两大类,一种是输入流.全部的输入流都直接或间接继承自InputStream抽象类,输入流作为数据的来源.我们能够通过输入流的read方法读取字节数据.还有一种是输出流,全部的输出流 ...

随机推荐

  1. 面试官:Netty心跳检测机制是什么,怎么自定义检测间隔时间?

    哈喽!大家好,我是小奇,一位热爱分享的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新 一.前言 书接上回,昨天在地里干了一天的 ...

  2. 【SpringSecurity系列3】基于Spring Webflux集成SpringSecurity实现前后端分离无状态Rest API的权限控制

    源码传送门: https://github.com/ningzuoxin/zxning-springsecurity-demos/tree/master/02-springsecurity-state ...

  3. 阿里巴巴开源限流组件Sentinel初探

    1 Sentinel主页 https://github.com/alibaba/Sentinel/wiki/主页 1.1 Sentinel介绍 随着微服务的流行,服务和服务之间的稳定性变得越来越重要. ...

  4. 干货合集│最好用的 python 库都在这

    一.分词 - jieba 优秀的中文分词库,依靠中文词库,利用词库确定汉子之间关联的概率,形成分词结果 import jieba word = '伟大的中华人民共和国' jieba.cut(word) ...

  5. Acwing 428

    可以找到规律,将第 N 项的 N 对应的二进制表示,转换为以 k 为基底的数即可. N=1=1 ----> 1 ----> \(a^b\) N=2=2 ----> 10 ----&g ...

  6. 一文掌握软件安全必备技术 SAST

    上一篇文章中,我们讨论了软件供应链的概念并了解到近年来软件供应链安全事件层出不穷.为了保障软件供应链安全,我们需要了解网络安全领域中的一些主要技术.本篇文章将介绍其中一个重要技术--SAST. 当开发 ...

  7. SAP 定义客户端

    SCC4  定义客户端 点击新建条目按钮  Client(客户端) R 200 Client Name(客户端名称) O   City(城市) R   Logical system(逻辑系统) R   ...

  8. 修改windows字符集

    手动 临时修改cmd默认字符集(代码页) chcp xxxx 自动<打开cmd后应该自动运行dhcp 65001,临时设置为utf-8> D:\Develope\apache-tomcat ...

  9. 令你瞠目结舌的 Python 代码技巧

    0. for-else 在 Python 中,else 不仅可以与 if 搭配使用,还可以与 for 结合. python答疑 咨询 学习交流群2:660193417### for x in rang ...

  10. 来用python自己做一个闹钟吧

    闹钟 是一种具有可以在预先设定的时间被激活以响铃的功能的时钟,用于唤醒打工人们. 使用Python中的DateTime模块来创建闹钟,并用Python中的playsound库来播放闹钟声音.~~~## ...