java - Java 二进制文件格式并没有大大减少文件大小
问题描述
我有多个大型 csv 文件(每个约 100MB),我想我会转换为二进制格式以节省磁盘空间。我正在逐行读取 csv 文件,并将每一行从字符串转换为字节数组,并按以下方式将该数组保存到文件中:
BufferedReader in = new BufferedReader(new FileReader(pathToFile));
FileOutputStream out = new FileOutputStream(path);
String line;
byte[] storeLine;
while ((line = in.readLine()) != null) {
storeLine = line.getBytes();
out.write(storeLine);
out.flush();
}
out.close();
当我运行这个时,我发现新构建的二进制文件并不比 csv 文件小很多。将字符串写入二进制文件时这是否正常,或者我可以做些什么来优化它?
例如:csv 文件 - 99851Kb 二进制文件 - 99646Kb
解决方案
推荐阅读
- python - 运行 python manage.py runserver 返回错误 LookupError: No installed app with label 'admin'
- swift - 集合视图单元格上的重叠阴影
- javascript - 如何在 ES5 中使用 Promise
- java - AudioTrack - IllegalStateException:在未初始化的 AudioTrack 上调用 play()
- javascript - 按标题名称检索 Google 表格列
- android - 如何构建 ViewPager 来滑动大图像?
- javascript - JS 中的 Gcloud pubsub worker
- javascript - {z}/{x}/{y} 在“tiles”中是什么意思:[location.origin+location.pathname+"countries/{z}/{x}/{y}.pbf"],
- ios - 为什么我不能使用 `isCalculating` 属性来等待计算请求完成
- amazon-redshift - 对表的所有列应用 MAX(LENGTH)