ホームページ  >  記事  >  バックエンド開発  >  一行ずつ、それとも一度に全部? C でファイルを読み取る最も効率的な方法はどれですか?

一行ずつ、それとも一度に全部? C でファイルを読み取る最も効率的な方法はどれですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-23 22:42:10551ブラウズ

Line by Line or All at Once?  Which is the Most Efficient Way to Read a File in C  ?

ファイルの内容を効率的に読み取る: 行ごとまたは全体

問題:

ファイル操作について学習しているときに、次のようなことが考えられます。テキスト ファイルを効率的に読み取ることが重要なシナリオに遭遇します。単語を個別に読むことはマスターしましたが、行ごとに読む方法や、ファイルの内容全体を一度に取得する方法についてはガイダンスを求めてください。

解決策:

ファイル行を読み取るには行ごとに、std::getline 関数を利用します。

#include <fstream>
#include <string>

int main() {
    std::ifstream file("Read.txt");
    std::string str;
    
    while (std::getline(file, str)) {
        // Process line
    }
}

または、全体を読みたい場合は、ファイルを一度に開くと、取得した行を連結できます:

std::ifstream file("Read.txt");
std::string str;
std::string file_contents;
    
while (std::getline(file, str)) {
    file_contents += str;
    file_contents.push_back('\n');
}  

拡張ファイル ストリームの使用法:

ファイルを手動で開いたり閉じたりする代わりに、次のように構築できます。コンストラクター内のファイル名を持つファイル ストリーム:

std::ifstream file("Read.txt");

以上が一行ずつ、それとも一度に全部? C でファイルを読み取る最も効率的な方法はどれですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。