![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| timur85 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.6.2007 Репутация: нет Всего: нет |
Здравствуйте
Мучаюсь с таким вот вопросом, очень нужна помощь. Из двоичного файла необходимо скачать n-кол-во байт. В классе FileStream есть метод: Read(byte[] buf,int offset,int numBytes) Предположим я считал в этот буфер 2 байта. Как этот массив из двух байт преобразовать к типу int? Нашел вот такое решение, но его не назвать элегантным:
Существует ли более элегантное решение? |
|||
|
||||
| Zeit |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.5.2007 Репутация: нет Всего: нет |
Есть еще два класса чтения и записи бинарных файлов, BinaryReader и BinaryWriter, соответственно в классе BinareWriter есть методы для чтения различных типов данных, в т.ч. и для int. ReadInt32, так вроде называется.
|
|||
|
||||
| timur85 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.6.2007 Репутация: нет Всего: нет |
Да я знаком с этими классами, но они не считывают нужное мне кол-во байт.
В файле поле занимает 4 байта, а мне надо получить значение только из первых 2 байт этого поля. В этом вся загвоздка... |
|||
|
||||
| Zeit |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.5.2007 Репутация: нет Всего: нет |
Ммм, а чем плох сдвиг влево\вправо? Или xor, or?)
Это сообщение отредактировал(а) Zeit - 24.6.2007, 00:01 |
|||
|
||||
| timur85 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.6.2007 Репутация: нет Всего: нет |
А каким образом это реализовано в C#?
|
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 22 Всего: 48 |
пользуйся BinaryReader и будет тебе счатье.
BinaryReader.ReadInt16 чем не подходит? возвращает как раз так нужный тебе short. а каким образом это обычно реализовывается? таким же точно и в C#. -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
-------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |