问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java从服务器下载文件时,为什么必须先创建一个和服务器文件大小相同的临时文件?

发布网友 发布时间:2022-04-25 08:50

我来回答

2个回答

热心网友 时间:2023-11-10 13:45

这是习惯,因为你不这样,文件大小就是在下载过程中动态变化,这不是好事。。。改变文件大小本身就有一系列对文件系统的操作,因为第一次被分配的文件位置并不一定有这么大的连续空间,增大文件大小,那么只能从别的空间找然后连接到这个文件上,逻辑上是连续的,物理上是不连续的,那么文件就在存储器上就变成分散的了,也就是分成好多碎片,在不同的位置,这对于读写来说严重影响速度。。。因为无论是硬盘还是flash都不是随机存储器,以分散就要频繁的定位。。。
最好是让文件在连续的区域内,那么你一开始就设定大小,那么系统会尽量分配到连续的存储区,追问有道理,刚试了一下,主线程没划空间,下载进度不同,文件大小也不同。
实在谢谢你的回答。
像我这样理解代码对吗?
主线程中是不是执行这段代码:raf.setLength(length);的时候,才会划分空间?而子线程中RandomAccessFile("test.exe","rwd");两个参数和主线程中的一样,是为了连接到那片划分好的临时空间?

热心网友 时间:2023-11-10 13:46

你理解错了!

热心网友 时间:2023-11-10 13:45

这是习惯,因为你不这样,文件大小就是在下载过程中动态变化,这不是好事。。。改变文件大小本身就有一系列对文件系统的操作,因为第一次被分配的文件位置并不一定有这么大的连续空间,增大文件大小,那么只能从别的空间找然后连接到这个文件上,逻辑上是连续的,物理上是不连续的,那么文件就在存储器上就变成分散的了,也就是分成好多碎片,在不同的位置,这对于读写来说严重影响速度。。。因为无论是硬盘还是flash都不是随机存储器,以分散就要频繁的定位。。。
最好是让文件在连续的区域内,那么你一开始就设定大小,那么系统会尽量分配到连续的存储区,追问有道理,刚试了一下,主线程没划空间,下载进度不同,文件大小也不同。
实在谢谢你的回答。
像我这样理解代码对吗?
主线程中是不是执行这段代码:raf.setLength(length);的时候,才会划分空间?而子线程中RandomAccessFile("test.exe","rwd");两个参数和主线程中的一样,是为了连接到那片划分好的临时空间?

热心网友 时间:2023-11-10 13:45

你理解错了!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 黑龙江债权转让合同纠纷该怎样取证 安徽债权转让合同纠纷应该怎么样取证 房产官司律师费多少 java中怎样建立一个临时文件,这个文件名名为文件内容里class类名 请问下,我想用java实现下载excel表格,思路是先在临时文件里生成临时excel文件,但是不知 如何在Java中创建临时目录/文件夹 物联网卡无法识别怎么办? 考勤是指纹打卡,员工请了几天事假,有请假单,回来上班后需不需要销假?销假什么意义?是告知人事部哪天 中控考勤机 节假日 年假 怎么设置 指纹打卡机打两次卡第一次是不是自动取消掉了 上下班打卡很麻烦! 考勤和请假分别隶属于人力资源的哪一部分 虚报考勤骗取工资,什么是骗取工资行为,虚假考勤套取 做假考勤承担什么法律责任? 员工做假考勤违法吗? 考勤缺勤和休假有什么区别 对工资有影响么 考勤表中的公假指什么 考勤指纹怎样做假 考勤和休假管理规定怎么拟订? 虚假考勤有哪些行为 怎样做出和真手指有一样指纹的假手指(对付考勤机) 请问大神们 那些考勤指纹签到系统中是怎样解决假手指(模拟手指塑料模具)代签问题的? 考勤假指纹怎么做 java程序实现先删除后创建一个文件 奇怪:我用java创建的临时文件,指定的文件名后面会出现一串数字 在Java工程下,用java代码创建文件夹 java无法创建临时文件 JAVA里Flie类的creatnewfile与creattempfile有什么不同 android上如何创建临时可读写文件 java response.getoutputstream 如何同时在服务器端生成一个临时文件 目前已经可以实现网页弹出下载文件 java 如何设置临时文件有效期? Java在指定目录中创建文件,为什么输出不是C:\JavaTemp.javatemp? 文件名后面的数字是什么意思?求指点。 JAVA中如何获得临时文件的路径? java创建文件夹,子文件夹里又有一个txt文件。。怎么弄?我只创建了前两个,最后包含的那个怎么创造 Java利用commons-fileupload进行文件上传中设置缓冲区和临时文件什么意思?请高手扫一下盲 java图片上传 关于 产生的临时文件的问题 小松鼠壁挂炉出现E2故障,该怎么办? 高中物理公式定理及常用常数 哪里有下载win7系统自带的桌面壁纸? 哪个软件可以下载win7桌面壁纸 win7旗舰版原版自带的桌面便签下载 win7旗舰版默认的主题是:桌面蓝底,中间有个windows标志,名叫Windows7的主提在哪可以下载到啊? 我的电脑是win7系统的,为什么有时有win7自带的IE浏览器下载文件不能下载到桌面上?