Страница: 1 |
Вопрос: Перекодировка файла в бинарный вид | Добавлено: 09.06.12 15:41 |
Автор вопроса: ![]() |
Всем добра!
Вопрос стоит в следующем: как осуществить перекодирование файла(любого) в бинарный (двоичный) файл. Например, у меня есть файл вуаля.jpg. Мне его надо перекодировать в вуаля.bin. И ещё кое-что. Либо у меня руки не из плеч растут, либо действительно что-то не так. Давно не был на этом сайте, а потому подзабыл пароль. Решил восстановить. Вписал почту, всё как надо. На почту пришло следующее: ??? ?????? ????????????? ????????????? ? ???????? ?????????? ? ????? ??????????? ?? ?????? ? ? ??????? beta-???????????? VBNet.
????????! ???????? ???? ??????????????? ??????: ?????: ?????? 95 ??????: ********* ??????? VBNet! Вместо звёздочек правда пароль, но вот вопросы так и были. Думайте сами, решайте сами. |
Ответы | Всего ответов: 15 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #1 | Добавлено: 09.06.12 15:46 |
Нашёл кое-что на эту тему, но как воспользоваться не знаю.
http://ru.wikipedia.org/wiki/Base64 |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #2 | Добавлено: 09.06.12 16:18 |
Фактически любой файл является двоичным, потому что на низком уровне данные представлены в виде нулей и единиц. |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #3 | Добавлено: 09.06.12 16:31 |
Это я знаю... НО вот как получить эту последовательность нулей и единиц понять не могу. Уверен, что можно это сделать, т.к. на CD диски, скажем, записывается именно такая последовательность. Ассамблировать? |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #4 | Добавлено: 09.06.12 22:52 |
Не нужно ничего ассамблировать.
Практически во всех языках программирования есть функции работы с файловой системой, в частности чтение данных файла в память. Вам нужно выбрать подходящую функцию и использовать ее. В .NET это можно сделать, например, функцией System.IO.File.ReadAllBytes. |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #5 | Добавлено: 10.06.12 10:05 |
Artyom,спасибо, помогло. |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 87 Ответов: 2795 |
Web-сайт: Профиль | Цитата | #6 | Добавлено: 10.06.12 12:04 |
Если вопрос ставится так, то делать не нужно вообще ничего, поскольку вуаля.jpg изначально бинарный. Если под словом "бинарный" подразумевать наличие символов (байтов) не могущих быть отображенными на экране. А вот как раз Base64 позволяет кодировать бинарные файлы в текстовом виде. Естественно с увеличением объёма выходных данных, поскольку текстовых символов меньше.
Так работает передача двоичных файлов в теле е-мэйла, поэтому кидать файлы по почте всегда считал извращением ![]() |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #7 | Добавлено: 10.06.12 19:37 |
Помогло да не совсем... методом рид ол байтс я получаю именн байты. Вопрос я получаю их в виде 0 и 1? Если нет, то как сделать так чтобы я получал файл именно в таком представлении из 0 и 1. ПОчему собственно задаюсь этим вопросом.. проинициализировав всё необходимиое, вызвал этот метод, считал байты. А вот посмотрть что же я считал у меня не получилось. |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 87 Ответов: 2795 |
Web-сайт: Профиль | Цитата | #8 | Добавлено: 10.06.12 20:47 |
гг. зуб даю - вся информация в компьютере представляется в виде нулей и единиц. Массив байтов [06, 14, 11] - это то же, что и [0x06, 0x0E, 0x0B] и то же, что [00000110, 00001110, 00001011].
И хранится это всё в виде нулей и единиц, различия только в способах которыми я это записал в виде текста. Речь идёт о необходимости преобразовать бинарные данные в текст определённого формата? |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #9 | Добавлено: 11.06.12 07:44 |
Winand, речь идёт о том, чтобы представить любой файл так, как его видит машина на низком уровне, т.е. в виде 0 и 1, и вывести это представление пользователю. Условный пример:
1.есть файл 1.txt 2.В файле запись 1221
Мы считываем файл массивом байт. Потом переводим всё это дело в систему счисления с основанием 2. Выдаём пользователю. На выходе получается(опять же условно, как точно получится я не знаю, не считал): 0000000100000110000001100100111001000110
|
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #10 | Добавлено: 11.06.12 11:16 |
|
Номер ответа: 11 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #11 | Добавлено: 11.06.12 15:30 |
Artyom честно говоря.... ничё не понял. Комменатрии плз, и если можно не консольно. |
Номер ответа: 12 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #12 | Добавлено: 11.06.12 16:27 |
Запускай код, что он делает, разбирайся как это работает. |
Номер ответа: 13 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: нету Вопросов: 6 Ответов: 42 |
Профиль | Цитата | #13 | Добавлено: 11.06.12 16:38 |
Artyomв какой среде? Если запустить как консоль-приложение выдаёт кучу ошибок. Если виндовс-формс то не меньше. Вы на какой версии записали? Я то на vb 2008 сижу... Мне если чесно не ясна одна строка
|
Номер ответа: 14 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #14 | Добавлено: 11.06.12 16:48 |
Это C# 3.0. Поищи в интернете конверторы в VB.NET
|
Номер ответа: 15 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: adamis@list.ru Вопросов: 153 Ответов: 3632 |
Профиль | Цитата | #15 | Добавлено: 12.06.12 01:21 |
IIf некашерно
троллю ![]() |
Страница: 1 |
|