Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2013, 02:07   #1
Alexey_68
Пользователь
 
Регистрация: 01.03.2013
Сообщений: 39
По умолчанию Чтение файла в hex виде

Здравствуйте!
Пробую прочитать файл и вывести на консоль и в текстовый файл в шестнадцатеричном виде:
Код:
#include <stdio.h>
#include <windows.h>
#include <winnt.h>

FILE *stream;
DWORD list[100];
DWORD SizeOfFile;
int i;

int main()
{
FILE *fp = fopen("1.exe","rb");

fread((DWORD *)list, 4, 100, fp);//чтение по 4 байта
fclose(fp);
stream = fopen("main.txt","wb");
for (i = 0; i <100; i++)
{
printf(" % 02X", list[i]);

fprintf(stream,"% 02x",list[i]);
}

 fclose(stream);
system("pause");
	return 0;
}
байты читаются наоборот, то есть в начале вместо:4D 5A 50 00
получаю:00505a4d
и вообще правильно ли у меня написано, также вопрос как прочитать весь файл, а не как у меня 100 ?
SizeOfFile = sizeof(fp) так?
Алексей
Alexey_68 вне форума Ответить с цитированием
Старый 11.05.2013, 02:27   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Код:
#include <stdio.h>
#include <windows.h>
#include <winnt.h>

#define SIZE 100

int
main()
{
    FILE *in1 = fopen("cz.exe", "rb");
    FILE *out1 = fopen("cz.txt", "wb");
    unsigned char buf[SIZE];
    size_t count;
    while (count = fread(buf, sizeof(buf[0]), SIZE, in1)) {
        int i;
        for (i = 0; i < count; ++i) {
            printf(" %02X", buf[i]);
            fprintf(out1, " %02X", buf[i]);
        }
    }
    fclose(in1);
    fclose(out1);
    system("pause");
    return 0;
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 11.05.2013, 03:03   #3
Alexey_68
Пользователь
 
Регистрация: 01.03.2013
Сообщений: 39
По умолчанию

Спасибо большое BDA!
Алексей

Последний раз редактировалось Alexey_68; 11.05.2013 в 03:47.
Alexey_68 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Редактирование hex-кода исполняемого файла geforcef1 Помощь студентам 0 28.03.2013 23:45
Правка EXE файла посредством bin/hex редактора. Вопрос о возможности увеличения длинны строки Вадим Мошев Общие вопросы по программированию, компьютерный форум 7 25.02.2012 00:02
Получение содержимого файла в виде 0 и 1 killer12rus PHP 2 16.04.2011 23:11
IP пакет в виде hex кода ATAMAN200 Общие вопросы C/C++ 3 18.09.2010 15:35
как в Си прочитать ЕХЕ файл в HEX виде ?? Юрий_BASE Общие вопросы C/C++ 1 18.04.2008 22:54