나는 파싱 중이며 파일을 열고 첫 번째 unsigned short를 저장할 수 있어야하는 비트 맵 이미지가 있습니다.파일에서 서명되지 않은 short를 읽는 방법?
FILE 및 fscanf()를 사용하여이 작업을 시도했지만 fscanf()가 항상 실패하고 0 (성공적으로 읽은 항목 수)을 반환합니다.
FILE *pFile = fopen (fileName->c_str() , "r");
if (pFile == NULL)
{
cerr << "couldn't open file ; exiting..." << endl;
exit(0);
}
unsigned short seed;
fscanf (pFile, "%hu", &seed);
사람이 난 그냥 좀 포인터를 줄 수 어쩌면 걸릴 (아마도 ifstream?) 또는 수있는 다른 방법을 알고 있나요 ? 어떤 도움이라도 대단히 감사하겠습니다.
감사합니다.
이것은'unsigned char buf [2];'와'sizeof (val)'대신'sizeof buf'이어야합니다. – caf
제발, 하느님. #ifdef를 꺼내서 해결책을 upvote 할 수 있습니다. 파일의 바이트 순서는 컴파일 타임 전 처리기 매개 변수에 의해 결정되지 않고 알려 져야합니다. –
피드백에 감사드립니다 - 동의합니다. – wallyk