RandomAccessFile的常见用法

2023-10-28

1.RandomAccessFile的简介

1.1为什么要用到RandomAccessFile

我们平常创建流对象关联文件,开始读文件或者写文件都是从头开始的,不能从中间开始,如果是开多线程下载一个文件我们之前学过的FileWriter或者FileReader等等都无法完成,而当前介绍的RandomAccessFile他就可以解决这个问题,因为它可以指定位置读,指定位置写的一个类,通常开发过程中,多用于多线程下载一个大文件.

1.2.常用方法简介

构造方法:RandomAccessFile raf = newRandomAccessFile(File file, String mode);

其中参数 mode 的值可选 "r":可读,"w" :可写,"rw":可读性;

成员方法:

​ seek(int index);可以将指针移动到某个位置开始读写;

​ setLength(long len);给写入文件预留空间:

2.RandomAccessFile的特点和优势

这个对象有两个优点

1.既可以读也可以写

RandomAccessFile不属于InputStream和OutputStream类系的它是一个完全独立的类,所有方法(绝大多数都只属于它自己)都是自己从头开始规定的,这里面包含读写两种操作

2.可以指定位置读写

RandomAccessFile能在文件里面前后移动,在文件里移动用的seek( ),所以它的行为与其它的I/O类有些根本性的不同。总而言之,它是一个直接继承Object的,独立的类。只有RandomAccessFile才有seek搜寻方法,而这个方法也只适用于文件.

3.通过案例来熟悉RandomAccessFile的最常用的操作

首先创建一个DownLoadThread的类继承Thread

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RandomAccessFile的常见用法 的相关文章

  • RandomAccessFile的常见用法

    1 RandomAccessFile的简介 1 1为什么要用到RandomAccessFile 我们平常创建流对象关联文件 开始读文件或者写文件都是从头开始的 不能从中间开始 如果是开多线程下载一个文件我们之前学过的FileWriter或者
  • Validator 用法详解

    validation 用法详解 1 常用注解说明 这是javax validation包中的 主要包括上述的几个注解 注解 描述 AssertFalse 被注释的元素必须为 false AssertTrue 同 AssertFalse De
  • MAE入局多模态分析,CMU联合微软发布仅需文本监督的视觉语言新模型VLC

    原文链接 https www techbeat net article info id 3677 作者 seven 论文链接 https arxiv org abs 2205 09256 代码链接 https github com guil
  • 铝电解电容的寿命计算(纹波电流法)手把手教你

    本文教你通过纹波电流预测铝电解电容的寿命 计算方法来自Nichicon 所以以Nichicon的电解电容为例 不同厂家的计算公式可能稍有不同 首先选一款铝电解电容为例 这里选择常见的LGN系列3000h 105 420V 470uF的电容
  • STM32单片机,UART的寄存器配置以及工作原理

    UART是重要的片上资源 主流单片机基本上都有该功能 通过UART可以扩展出很多的通信接口 如RS232 RS485 LIN 甚至WIFI 蓝牙模组等 可以说只要搞通讯就会涉及到UART 下面和大家分享STM32的UART配置 1 UART
  • 同一页面、不同页面监听localStorage变化

    当同源页面的某个页面修改了localStorage 其余的同源页面只要注册了storage事件 就会触发 所以 localStorage 的例子运行需要如下条件 同一浏览器打开了两个同源页面 其中一个网页修改了 localStorage 另
  • 故障注入测试(Fault Injection Test)方法

    这周新一篇技术文章来袭 今天要分享的技术文章是 故障注入测试 Fault Injection Test 方法 过去只被归类为机械装置的汽车 现在变成了包括许多电子控制装置在内的尖端产品 最近上市的汽车上基本上都搭载了100个以上的控制器 由
  • ES 聚合函数的用法

    1 ES聚合分析是什么 聚合分析是数据库中重要的功能特性 完成对一个查询的数据集中数据的聚合计算 如 找出某字段 或计算表达式的结果 的最大值 最小值 计算和 平均值等 ES作为搜索引擎兼数据库 同样提供了强大的聚合分析能力 对一个数据集求
  • Java 对象toString()之后转化成json对象

    在平时的工作中经常遇到Java对象toString 之后打印出来 在发生线上问题时需要参数重新调用时 无法转化参数 如下图 TransOccupyRequestDTO newOrderId 390310807 transOccupyDeta
  • ASP.NET页面之间传值的五种常用方法

    1 使用QueryString变量 QueryString是一种非常简单的传值方式 他可以将传送的值显示在浏览器的地址栏中 如果是传递一个或多个安全性要求不高或是结构简单的数值时 可以使用这个方法 但是对于传递数组或对象的话 就不能用这个方
  • vue图片上传组件

    vue图片上传组件 最近在做项目的时候顺便补充了一下公司项目的公共组件库 刚刚手头事情告一段落 就来做个笔记 首先来看看最终效果 1 不允许删除 2 允许用户删除 显示删除按钮 实现的效果就是上图显示内容 接下来说说组件布局那部分直接上代码
  • CSS中margin属性详解

    margin属性概述 margin是CSS层叠样式表中用来规定围绕在元素边框周围空白区域范围的属性 该接受任何长度单位 可以是像素 英寸 毫米或 em 相关属性 margin 可以单独改变元素的上 下 左 右边距 也可以一次改变所有的属性
  • 你要知道的 Npm Script 都在这里

    在拿到一个项目之后 如何看入口文件 如何运行项目 我们都会找到 package json 中的 script 甚至在做项目做久之后 我们会自己写一些脚本来给开发提效 但你知道 NPM 脚本能做什么吗 你知道如何传递一个参数给脚本 你知道如何
  • DirectShow中H.264 SourceFilter的Pin配置

    对DirectShow SourceFilter 要在Pin上输出H 264码流 需要注意如下设置 majortype MEDIATYPE Video 73646976 0000 0010 8000 00AA00389B71 subtype
  • 500 G JAVA视频网盘分享(JEECG开源社区)

    500 G JAVA视频网盘分享 JEECG开源社区 涵盖从java入门到深入架构 Linux 云计算 分布式 大数据Hadoop ios Android 互联网技术应有尽有 转载 http blog csdn net zhangdaisc
  • 大数据分析系统

    1 概念 分类 数据分析系统的主要功能是从众多外部系统中 采集相关的业务数据 集中存储到系统的数据库中 系统内部对所有的原始数据通过一系列处理转换之后 存储到数据仓库的基础库中 然后 通过业务需要进行一系列的数据转换到相应的数据集市 供其他
  • 抗击疫情,AI可以做些什么?

    目前 新冠疫情的发展 可以说无时无刻不在牵动着大家的心 在这样的历史背景下 作为人工智能 数据科学领域的从业者 我们不妨来探讨一下 AI在遏制类似的疾病传播中 可以起到什么样的作用 当然 单纯靠AI技术确实无法让病毒停止传播 在一定时期内
  • 基于Apache Storm Trident实时计算开发 下

    2 4 入门案例 pom xml Topology
  • JDK21新特性探秘

    欢迎关注公众号 通过文章导读关注 11来了 及时收到 AI 前沿项目工具及新技术 的推送 发送 资料 可领取 深入理解 Redis 系列文章结合电商场景讲解 Redis 使用场景 中间件系列笔记 和 编程高频电子书 文章导读地址 点击查看文
  • JDK21新特性探秘

    欢迎关注公众号 通过文章导读关注 11来了 及时收到 AI 前沿项目工具及新技术 的推送 发送 资料 可领取 深入理解 Redis 系列文章结合电商场景讲解 Redis 使用场景 中间件系列笔记 和 编程高频电子书 文章导读地址 点击查看文

随机推荐

  • 黑白滤镜 ie专用

    最近网站要求黑白的频率变多了 html filter progid DXImageTransform Microsoft BasicImage grayscale 1
  • Python 读取文件首行多了"\ufeff"字符串

    问题背景 python读取B txt文件时 控制台打印首行正常 但是若是用首行内容打开文本的话 就会报错 Traceback most recent call last A File E python project multiProces
  • html表格里面怎么合并单元格的快捷键,合并单元格快捷键ctrl加什么?

    01 先选择要合并的单元格 按CTRL 1键 再用 及 方向键移动到第二个选项卡 再按ALT M键 再按确定 完成 Excel是Microsoft为使用Windows和AppleMacintosh操作系统的电脑编写的一款电子表格软件 Wor
  • Kali-linux安装之后的简单设置

    1 更新软件源 修改sources list文件 leafpad etc apt sources list 然后选择添加以下适合自己较快的源 可自由选择 不一定要全部 官方源 deb http http kali org kali kali
  • C++ map的常用用法(超详细)(*^ー^)人(^ー^*)

    C 中的map翻译为映射 不是地图 也是常用的STL容器 它在算法竞赛中应用十分广泛 因为map可以将任何基本类型 包括STL容器 映射到任何基本类型 包括STL容器 十分灵活 因此我们很有必要来熟练map的常用用法 目录 1 map的定义
  • 虚拟实验服务器,MED-V动手实验一:服务器部署

    IT168 专稿 微软在2009年4月份发布的MDOP2009中提供了MED V的正式版本 MED V是Microsoft Enterprise Desktop Virtualization的缩写 顾名思义 MED V为企业提供了桌面虚拟化
  • PHY 驱动目录树构建

    在看Linux网络PHY设备驱动的时候一直有个问题萦绕心头 久久挥之不去 辗转反侧 难以入眠 不是因为看了不 懂 而是因为大体的流程都不明白 主要体现在以下几点 1 在注册PHY设备时 驱动所需要的总线是什么时候准备好的 2 总线 设备 驱
  • CTF MISC图片隐写简单题学习思路总结(持续更新)

    系列文章目录 第一篇文章 CTF Crypto简单题学习思路总结 持续更新 文章目录 系列文章目录 前言 一 JPG类隐写 1 1 JPG文件末尾添加字符串 1 2 JPG文件中添加字符串 1 3 图片文件分离 1 4 JSteg JPHi
  • Filesystem Hierarchy Stardard(FHS)规定Linux应放置文件内容

    第一部分 FHS要求必须要存在的目录 第二部分 FHS建议可以存在的目录 第三部分 其他重要 来源 鸟哥的Linux私房菜 基础篇 第四版
  • Safari的html5 localStorage错误:“ QUOTA_EXCEEDED_ERR:DOM异常22:试图向存储中添加超出配额的内容”...

    如何解决Safari的html5 localStorage错误 QUOTA EXCEEDED ERR DOM异常22 试图向存储中添加超出配额的内容 显然 这是设计使然 当Safari OS X或iOS 处于私有浏览模式时 它似乎local
  • Spring解决循环依赖的思路与代码实现

    Java基基 2023 09 08 11 55 发表于上海 这是一个或许对你有用的社群 一对一交流 面试小册 简历优化 求职解惑 欢迎加入 芋道快速开发平台 知识星球 下面是星球提供的部分资料 项目实战 视频 从书中学 往事中 练 互联网高
  • 程序员面试、算法研究、编程艺术、红黑树、机器学习5大系列集锦

    程序员面试 算法研究 编程艺术 红黑树 机器学习5大经典原创系列集锦与总结 七月在线 https www julyedu com 面试 算法 机器学习在线课程 作者 July 结构之法算法之道blog之博主 时间 2010年10月 2018
  • linux下phpMyAdmin 出现 “缺少 mysqli 扩展,请检查 PHP 配置。”

    问题一 原因 mysqli这个扩展没有安装 或者你没有在php ini里面加入extension mysqli d 解决方案 yum install php mysql 然后重启apache 或者 编辑php ini 在最后加入 exten
  • 多元回归分析

    多元回归分析 MLR多元线性回归多输入单输出预测 Matlab完整程序 目录 多元回归分析 MLR多元线性回归多输入单输出预测 Matlab完整程序 预测结果 评价指标 基本介绍 程序设计 参考资料 预测结果 评价指标 训练集数据的R2为
  • 学习笔记十九:Pod常见的状态和重启策略

    Pod常见的状态和重启策略 常见的pod状态 第一阶段 第二阶段 扩展 pod重启策略 测试Always重启策略 正常停止容器内的tomcat服务 非正常停止容器里的tomcat服务 测试never重启策略 正常停止容器里的tomcat服务
  • 随机图片API

    文章目录 创建自己的图库 创建index php和img txt img txt写入图片链接 一行一个图片链接 可直接调用接口 二次元随机图 API 随机二次元接口源码 双版本 直接调用API 创建自己的图库 创建index php和img
  • java引入包_java如何导入包

    展开全部 1 首先在项目下创建一个新的文件夹 用来保存jar包 在项目名上点击鼠标62616964757a686964616fe4b893e5b19e31333431336665右键 按顺序点击 New Floder 打开新建文件夹的窗口
  • (Java)leetcode-124 Binary Tree Maximum Path Sum(二叉树中的最大路径和)

    更多LeetCode题解 可移步我的解题记录 持续更新中 题目描述 给定一个非空二叉树 返回其最大路径和 本题中 路径被定义为一条从树中任意节点出发 达到任意节点的序列 该路径至少包含一个节点 且不一定经过根节点 示例 1 输入 1 2 3
  • mysql行锁sql语句怎么写_mysql的锁

    在MySQL中 不同的存储引擎采用的不同的锁机制 如MyISAM和MEMORY存储引擎采用表级锁 InnoDB存储引擎既支持行级锁 也支持表级锁 MySQL中使用表锁的语句如下 lock table table name read 共享读锁
  • RandomAccessFile的常见用法

    1 RandomAccessFile的简介 1 1为什么要用到RandomAccessFile 我们平常创建流对象关联文件 开始读文件或者写文件都是从头开始的 不能从中间开始 如果是开多线程下载一个文件我们之前学过的FileWriter或者