ファイルに書き込もうとしていますが、書き込みシステム コールを使用して高速化したいと考えています。基本的に QVector があり、結果をファイルに保存したいと考えています。もともと私は配列を反復処理していましたが、遅すぎます。だから私はいくつかの調査を行い、Write System Callと呼ばれるものを見つけましたが、コードの設定方法がわかりません。
これは私がこれまでに試したことです:
/*Header File*/
QVector<unsigned short> rawData;
/*Implementation File*/
int fd = open("output.txt", O_WRONLY)L
write(fd, &rawData, rawData.size());
close(fd);
上記のコードはクラッシュしませんが、実際には出力ファイルに何も書き込みません。私が間違っていることはありますか?
編集:
ファイルに書き込むfwrite
ことはできますが、ファイル内のデータは奇妙な Unicode です。基本的に、私が取得しようとしているのは数字ではありません。これが私がやっていることです:
FILE * pFile;
pfile = fopen("pixelValues.txt", "wb");
fwrite(&rawData, sizeof(unsigned short), sizeof(rawData), pFile);
fclose(pFile);