ホームページ >バックエンド開発 >C++ >C を使用してテキスト ファイル内の特定の行にジャンプするにはどうすればよいですか?

C を使用してテキスト ファイル内の特定の行にジャンプするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-01 10:31:02998ブラウズ

How to Jump to a Specific Line in a Text File Using C  ?

C でのテキスト ファイルの行の移動

C を使用してテキスト ファイルを操作する場合、特定の行にジャンプする必要がある場合があります。この目的のために C が提供する直接的な方法はありませんが、目的の行に到達するまでファイルをループすることでこれを実現できます。

特定の行へのループ

この解決策には、ループを使用して、目標行番号に達するまで行数をカウントすることが含まれます。この手法は、以下のコード スニペットで示されています。

<code class="cpp">#include <fstream>
#include <limits>

std::fstream& GotoLine(std::fstream& file, unsigned int num){
    file.seekg(std::ios::beg);
    for(int i=0; i < num - 1; ++i){
        file.ignore(std::numeric_limits<std::streamsize>::max(),'\n');
    }
    return file;
}</code>

GotoLine 関数は、ファイル ストリームのシーク ポインターを、指定された num 行の先頭に設定します。

コード

この手法を説明するために、次の内容を含むテキスト ファイルを考えます。

1
2
3
4
5
6
7
8
9
10

次のテスト プログラムは、8 行目にジャンプして内容を読み取る方法を示しています。

<code class="cpp">int main(){
    using namespace std;
    fstream file("bla.txt");

    GotoLine(file, 8);

    string line8;
    file >> line8;

    cout << line8;
    cin.get();
    return 0;
}</code>

出力:

8

ループ手法を実装すると、テキスト ファイル内の任意の特定の行に簡単に移動し、C でその内容にアクセスできます。

以上がC を使用してテキスト ファイル内の特定の行にジャンプするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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