0

C++ コードには、2 つの .bmp ファイル (参照ファイルは、一度に別のディレクトリ内のほぼ 100 個のファイルと比較されます) をビットごとに比較し、ターミナル ウィンドウで実行するとビット エラーを適切に報告する特定の関数があります。それを行う関数は次のとおりです。

 void getBitErrors(char *filename, char *dirName, int height, int width){

DIR *dir;
struct dirent *ent;
//char *f = "";
    dir = opendir (dirName);
if (dir != NULL) {
    /* print all the files and directories within directory */
    while ((ent = readdir (dir)) != NULL) {
        if(strcmp(ent->d_name,".") && strcmp(ent->d_name,".."))
        {
              char f[255]="";
          strcat(f,dirName);
          strcat(f,ent->d_name);    
              printf ("reading image file %s\n", f);
          cout<<"Bit Error "<<getBitError(filename,f,height,width)<<endl;
        }
       }
       closedir (dir);
 } 
else {
perror ("");
    }
}

コードに 100 個のそれぞれの比較値を xlsx/obs ファイルに書き込む関数が必要です (端末ウィンドウで std::cout によって出力を表示するのではなく)。2 つの異なるオプションを調べました。1)有料ライブラリである自明のlibXLであり、このライブラリに支払う199ドルは実際にはありません。2) 少しかすんでいる SimpleXlsx。どうすれば結果を達成できるかを誰かが説明してくれたら、とても助かります。OS : Linux Ubuntu 10.10 Maverick。

4

1 に答える 1

3

.csv(カンマ区切り値)形式を確認することをお勧めします。はるかに複雑でない結果のようなスプレッドシートを取得できます。

于 2012-10-02T02:56:34.890 に答える