私はここで新しく、構造体があるという質問があります。たとえば、全体のサイズが8バイトであるとしましょう。ここでは、構造体です。
struct Header
{
int ID; // 4 bytes
char Title [4]; // 4 bytes too
}; // so it 8 bytes right?
そして私も8バイトのファイルを持っています...私はただ尋ねたいのですが、そのファイルのデータをその構造体に解析する方法
私はこれを試しました:
Header* ParseHeader(char* filename)
{
char* buffer = new char[8];
fstream fs(filename);
if (fs.is_open() != true)
throw new exception("Couldn't Open file for Parsing Header.");
fs.read(buffer, 8);
if (!fs)
{
delete[] buffer;
throw new exception("Couldn't Read header OJN file.\nHeader data was corrupted");
}
Header* header = (Header*)((void*)buffer);
delete[] buffer;
fs.close();
return header;
}
しかし、失敗し、予想よりも無効なデータが返されます(これはファイルの障害ではなく、ファイルが正しく構造化されていることを確認できます)
誰かが私を助けることができますか?ありがとう