Попробуйте преобразовать двоичный файл изображения в ascii.

Я так застрял. Я пытаюсь создать текстовый файл ascii, который хранит значения файла .PGM.

Я могу прочитать файл отлично, заголовок в ascii, и он читает отлично.

Но проблема в том, что мне нужно прочитать все после 16-байтового заголовка как ascii и вывести его в виде файла atext, например:

0 235 23 02 255

и т. д. Это вместо двоичного представления, которое выглядит следующим образом:

   ÐHHb{{

Итак, вот мой код для базового базового чтения файла:

void readTxt(char * fileName){
std::ifstream inFile(fileName);

unsigned int * cData = 0;

int rows = 1943;
int cols = 1365;

try{
if(inFile.is_open()){
cData = new unsigned int[rows*cols];
int i = 0;

while(inFile.good()){
if(i > rows*cols -1) break;
inFile >> cData[i]; i++;
}
}
else throw "Could not open file\n";

std::cout <<"done\n";

inFile.close();
}
catch(const char * e){ std::cout << "Err"; }

delete[] cData;

}

Но я полностью в тупике. Что мне делать с данными? Я не уверен, но я думаю, что это хранится как символы с пробелами,

так как бы определить сказать char [3] = «255» как int? или что просто char [0] = «0» является int.
Они имеют разную длину. Ах, я так растерялся. Ненавижу звучать как новичок, но я бы больше не хотел тратить время впустую!

Спасибо

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]