java - 如何在不写的情况下将 setLength 设置为 RandomAccessFile?
问题描述
我正在运行以下代码:
RandomAccessFile randomAccessFile = new RandomAccessFile(new File(Download.DESTINATION + Download.getFileName(Download.FILEPATH)), "rwd");
randomAccessFile.setLength(contentLength);
randomAccessFile.close();
AcontentLength
约为 60Gb。我希望这个空间将只是在硬盘驱动器上创建。这个操作应该只是字节分配并且没有成本。我的意思是文件系统只是标记这些空间是由文件保留的。但是java在这个文件中写了一些东西:
有没有办法禁用它?我不在乎现在包含什么文件。稍后将重写所有数据。为什么java会立即填充这个文件?
PS如果问题不清楚,请随时在评论中提问。
解决方案
randomAccessFile.setLength(1024l * 1024 * 1024 * 60);
推荐阅读
- python - 在两个线程中交替输入
- json - 如何使用Vue在表格中的tr和td之间循环元素?
- android - App closes when item on bottom navigation view is selected to replace fragment
- python - 从网页抓取数据后无法生成一些自定义输出
- sql - SQL Server 2016:将 FOR XML 和 STUFF 用于多连接查询
- excel - 在 Excel 2019 中打开“管理数据建模”时出错
- python - 运行功能后数据框未更新
- elasticsearch - Kafka 连接器将主题键映射为 ElasticSearch 中的文档 ID
- python - 将向量/csr矩阵行乘以numpy / scipy中的“梯度下降”权重
- python - 图像未保存在数据库 django 中