首先,抱歉我的英文不好。 我嘗試在linux上獲取excute文件的內容,但出現錯誤。的 而不是顯示所有content.It只顯示它們無法獲取所有的執行文件的內容
MYFILE是B.OUT的一部分: 權@泉桌面:〜/ quanrocktest/tuan1 $貓B.OUT ELFquan0 4 4($!444444 .... ... 等等 B.OUT是一個ELF文件
我的代碼:
#include <stdio.h>
#include「stdlib.h」
INT主(){
FILE *file;
char *buffer;
unsigned int fileLen;
//Open file
file = fopen("/home/quan/quanrocktest/a/b.out", "r");
//Get file length
fseek(file, 0, SEEK_END);
fileLen=ftell(file);
fseek(file, 0, SEEK_SET);
//Allocate memory
buffer=(char *)malloc(fileLen+1);
if (!buffer)
{
fprintf(stderr, "Memory error!");
fclose(file);
return 0;
}
//Read file contents into buffer
fread(buffer, fileLen, 1, file);
fclose(file);
printf("len is %d \n",fileLen);
//Do what ever with buffer
printf("%s",buffer);
free(buffer);
返回0; }
而且結果: 權@泉桌面:〜/ quanrocktest/A $ G ++ INIT.C
權@泉桌面:〜/ quanrocktest/A $ ./a.out
len爲8256
ELFquan @泉桌面:〜/ quanrocktest/A $
a.out的只是顯示
ELFquan
當我使用vi或貓,B.OUT仍顯示良好
無法讀取您的問題中的所有字符。你能編輯這個問題,並確保所有的字符都是可讀的嗎? – darnir
某些字符不顯示在屏幕上,但它只是一個例子。您可以將它理解爲我的文件上的一個字符。 – quanrock