0

バイナリ モードの C++ で open() 関数を使用して .xls または .PDF ファイルを開き、その内容を読み取ることはできますか? そうでない場合、そのようなファイル形式(およびおそらくそれ以上)のファイルの内容を読み取ることができるアプリケーションプログラムを構築するにはどうすればよいですか

4

3 に答える 3

2

はい、ファイルシステム内の任意のファイルをバイナリファイルとして開くことができ、それを読み取ることもできます (オペレーティングシステムがファイルアクセス権に基づいてファイルを開くことを許可し、他のアプリケーションがロックしていない限り)など)。

次に、おそらく「PDF または XLS ファイルを解釈するにはどうすればよいですか?」という質問をするでしょう。そして、それは彼らがここイギリスで言うように、まったく別のやかんです. PDF ファイルも XLS ファイルも、単純に「理解」できるわけではありません。私が最近見た PDF ライブラリには、数十個のファイルが含まれており、数メガバイトのソース コードです。私は Python で XLS ファイルを扱ったことがありますが、そこにあるコードは数千行のコードでした。

于 2013-02-23T17:16:55.500 に答える
0

簡単な読み方は次のとおりです。

#include <iostream>
#include <fstream>
#include <algorithm>
#include <iterator>

std::vector<char> readfile(std::string const& fname)
{
    std::ifstream ifs(fname.c_str(), std::ios::binary);
    std::istreambuf_iterator<char> f(ifs.rdbuf()), l;

    std::vector<char> bytes;
    std::copy(f, l, std::back_inserter(bytes));
    return bytes;
}

int main() 
{
    auto bytes = readfile("my.pdf");
}
于 2013-02-23T17:13:24.903 に答える