Существуют ли способы хранения большого двоичного файла, такого как 50 МБ, в десяти файлах с 5 МБ? спасибо Есть ли специальные классы для этого?Хранение большого двоичного файла
0
A
ответ
0
Да, есть. В основном просто подсчитывайте байты, которые вы пишете в файл, и если он достигает определенного предела, прекратите запись, сбросьте счетчик и продолжите запись в другой файл с использованием определенного шаблона имени файла, чтобы вы могли сопоставить файлы друг с другом. Вы можете сделать это в цикле. Вы можете узнать, как писать файлы в Java, а для остатка просто применять математику начальной школы.
1
Используйте FileInputStream для чтения файла и FileOutputStream для его записи.
Вот простой (неполный) пример (отсутствие обработки ошибок, пишет 1К ломти)
public static int split(File file, String name, int size) throws IOException {
FileInputStream input = new FileInputStream(file);
FileOutputStream output = null;
byte[] buffer = new byte[1024];
int count = 0;
boolean done = false;
while (!done) {
output = new FileOutputStream(String.format(name, count));
count += 1;
for (int written = 0; written < size;) {
int len = input.read(buffer);
if (len == -1) {
done = true;
break;
}
output.write(buffer, 0, len);
written += len;
}
output.close();
}
input.close();
return count;
}
и называют как
File input = new File("C:/data/in.gz");
String name = "C:/data/in.gz.part%02d"; // %02d will be replaced by segment number
split(input, name, 5000 * 1024));
Смежные вопросы
- 1. Хранение большого JSON - двоичного или текстового
- 2. Обновление Java большого двоичного файла
- 3. Сплит большого двоичного файла в Matlab
- 4. Загрузка большого двоичного файла с kdb + (Q)
- 5. Извлечение zip-файлов из большого двоичного файла
- 6. ошибка чтения большого двоичного файла в MATLAB
- 7. Python: нарезка очень большого двоичного файла
- 8. Написание большого двоичного файла по частям
- 9. Уменьшение производительности записи большого двоичного файла
- 10. Запись большого двоичного файла в C
- 11. Сканирование большого двоичного файла с помощью Erlang
- 12. Редактор Hex для открытого большого двоичного файла
- 13. Хранение большого файла в пакетном файле
- 14. Хранение большого файла в словаре (или SQLite)
- 15. Хранение (возможно большого) файла между запросами весной
- 16. Чтение и хранение содержимого большого файла ASCII
- 17. Хранение большого файла в hadoop HDFS?
- 18. Хранение большого количества файлов
- 19. Хранение таблиц большого поиска
- 20. Хранение большого объема объектов
- 21. Хранение большого примечания -объектив-c
- 22. Приложения двоичного дерева. Хранение дат.
- 23. Хранение двоичного массива в MySQL
- 24. Хранение числового значения из двоичного файла в массив-C++
- 25. Много процессов обрабатывают разные части большого двоичного файла одновременно
- 26. Что такое наиболее эффективный способ чтения большого двоичного файла python
- 27. Любой эффективный способ чтения данных из большого двоичного файла?
- 28. C удаление части большого двоичного файла с lseek/чтение/запись
- 29. Самый быстрый способ разбора большого двоичного файла в python
- 30. Какова наилучшая практика быстрого создания очень большого двоичного файла?
Интересно, будет ли этот бот может быть запрещен – stacker
Так у вас есть 50 MB файлы вы хотите разделить на десять файлов размером 5 МБ, и вы хотите использовать Java для этого? – John
штабелер, любопытно, почему вы подозреваете, что бот ... много вопросов без ответов? – John