Работа с бинарными файлами
От: anterg  
Дата: 10.09.07 11:01
Оценка:
Здравствуйте!
Мне нужно создать бинарный файл в определенном формате, чтобы потом его использовать в программе на Java. Я пока понятия не имею, как упаковываются бинарники. Подскажите, пожалуйста, куда смотреть, чтобы научиться это делать (лит-ру, код, другие ресурсы и т.д.)
Re: Работа с бинарными файлами
От: Denis_Orlov  
Дата: 10.09.07 11:31
Оценка:
Здравствуйте, anterg, Вы писали:

A>Здравствуйте!

A>Мне нужно создать бинарный файл в определенном формате, чтобы потом его использовать в программе на Java. Я пока понятия не имею, как упаковываются бинарники. Подскажите, пожалуйста, куда смотреть, чтобы научиться это делать (лит-ру, код, другие ресурсы и т.д.)

Если я правильно понял проблему, то должно помочь: DataOutputStream
Метод — public final void writeByte(int v).

И DataInputStream
Метод — public final char readChar() throws IOException

Как это применить здесь
Re: Работа с бинарными файлами
От: Blazkowicz Россия  
Дата: 10.09.07 11:55
Оценка:
Здравствуйте, anterg, Вы писали:

A>Мне нужно создать бинарный файл в определенном формате, чтобы потом его использовать в программе на Java. Я пока понятия не имею, как упаковываются бинарники. Подскажите, пожалуйста, куда смотреть, чтобы научиться это делать (лит-ру, код, другие ресурсы и т.д.)

А поконкретнее? Весь IO API и так с бинарными данными работает.
Re[2]: Работа с бинарными файлами
От: anterg  
Дата: 10.09.07 12:50
Оценка:
Здравствуйте, Blazkowicz, Вы писали:

B>Здравствуйте, anterg, Вы писали:


A>>Мне нужно создать бинарный файл в определенном формате, чтобы потом его использовать в программе на Java. Я пока понятия не имею, как упаковываются бинарники. Подскажите, пожалуйста, куда смотреть, чтобы научиться это делать (лит-ру, код, другие ресурсы и т.д.)

B>А поконкретнее? Весь IO API и так с бинарными данными работает.

Итак, есть спецификация формата файла, в которой для каждого бита в файле расписано, за что он отвечает. Я хочу создать свой собственный файл в этом формате. Использовать этот файл будет потом программа на Java. Но если как зачитывать нужные данные из такого файла я примерно представляю (есть пример кода, осуществляющего парсинг бинарных файлов), то как создают бинарники я не знаю совсем.
Re[2]: Работа с бинарными файлами
От: anterg  
Дата: 10.09.07 13:06
Оценка:
Здравствуйте, Denis_Orlov, Вы писали:

D_O>Здравствуйте, anterg, Вы писали:


A>>Здравствуйте!

A>>Мне нужно создать бинарный файл в определенном формате, чтобы потом его использовать в программе на Java. Я пока понятия не имею, как упаковываются бинарники. Подскажите, пожалуйста, куда смотреть, чтобы научиться это делать (лит-ру, код, другие ресурсы и т.д.)

D_O>Если я правильно понял проблему, то должно помочь: DataOutputStream

D_O>Метод — public final void writeByte(int v).

D_O>И DataInputStream

D_O>Метод — public final char readChar() throws IOException

D_O>Как это применить здесь


Спасибо! Да это поможет. Я просто хотел узнать, как вообще создают двоичные файлы в заданном формате. Примерно так: берут байт, с помощью побитовых операций устанавливают его биты в единицу или ноль и записывают в поток. Или есть какие-то другие способы?
Re[3]: Работа с бинарными файлами
От: Blazkowicz Россия  
Дата: 10.09.07 13:18
Оценка:
Здравствуйте, anterg, Вы писали:

A>Но если как зачитывать нужные данные из такого файла я примерно представляю (есть пример кода, осуществляющего парсинг бинарных файлов), то как создают бинарники я не знаю совсем.

А в чем сложность код сменить с парсинга на билдинг? Вместо операций чтения использовать запись. Они в IO и прочих почит всегда симметричны.
Re[3]: Работа с бинарными файлами
От: Blazkowicz Россия  
Дата: 10.09.07 13:22
Оценка:
Здравствуйте, anterg, Вы писали:

D_O>>Если я правильно понял проблему, то должно помочь: DataOutputStream


A>Спасибо! Да это поможет. Я просто хотел узнать, как вообще создают двоичные файлы в заданном формате. Примерно так: берут байт, с помощью побитовых операций устанавливают его биты в единицу или ноль и записывают в поток. Или есть какие-то другие способы?

DataOutputStream это не заданный формат. Это строго утсновленный формат для Java примитивов.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.