ホームページ バックエンド開発 C++ C++ での入出力にテキスト ファイルを使用する

C++ での入出力にテキスト ファイルを使用する

Aug 22, 2023 pm 02:49 PM
ファイル操作 C++ファイルIO テキストファイルの読み書き

C++ での入出力にテキスト ファイルを使用する

C では、テキスト ファイルの処理が非常に重要です。これは、ほとんどのプログラムが、ディスクに保存されているデータ ファイルの読み取りや、ファイル内のデータの変換など、外部ファイルとの入出力を実行する必要があるためです。プログラムはファイルに保存されます。そこで今回はC言語でテキストファイルを入出力に使う方法を紹介します。

1. テキスト ファイルのオープンとクローズ

C では、ファイルの読み取りと書き込みにはファイル ストリーム クラス オブジェクト (fstream) を使用する必要があります。ファイルを使用する前に、ファイル ストリーム オブジェクトを作成し、それをファイルに関連付ける必要があります。ファイル ストリーム オブジェクトのコンストラクターは、ファイル名と開くメソッドをパラメーターとして受け入れることができます。 C には、ファイルを開く一般的な方法が 3 つあります。

  1. ios::in: ファイルを読み取り専用モードで開きます。
  2. ios::out: ファイルを書き込み専用モードで開きます。
  3. ios::app: ファイルを追加モードで開きます。

次は、ファイルを開く方法を示す簡単な例です:

#include <fstream>
using namespace std;

int main()
{
    // 创建文件流对象并关联文件
    fstream file("example.txt", ios::in | ios::out);

    // 判断文件是否打开成功
    if (!file)
    {
        cout << "无法打开文件" << endl;
        return -1;
    }

    // 文件操作

    // 关闭文件
    file.close();
    return 0;
}
ログイン後にコピー

上記のコードでは、fstream クラスのコンストラクターを通じて file という名前のファイル ストリーム オブジェクトが作成されます。そして、それをファイル example.txt に関連付けます。ファイルを開くときは、読み取りと書き込みの両方が可能なメソッドが使用されます。つまり、ファイルを読み取る必要がある場合は ios::in オプションを使用する必要があり、ファイルを書き込む必要がある場合は ios::out オプションを使用する必要があり、コンテンツを追加する必要がある場合は ios::out オプションを使用する必要があります。ファイルの最後では、ios ::appoptions を使用する必要があります。便宜上、ここでは読み取り可能なメソッドと書き込み可能なメソッドの両方が使用されます。

ファイル操作が完了したら、ファイルを閉じる必要があります。これは、ファイル ストリーム オブジェクトの close() 関数を通じて実現できます。

2. ファイルからのデータの読み取り

テキスト ファイルを開いた後、ファイル入力ストリーム オブジェクト (ifstream) を使用してテキスト ファイルからデータを読み取ることができます。 C には、次のようなファイルからデータを読み取るさまざまなメソッドが用意されています。

  1. getline() 関数: ファイルからテキスト データの行を読み取ります。
  2. オペレーター: ファイルから単語または値を読み取ります。
  3. read() 関数: 指定された長さのデータをファイルから読み取ります。
  4. get() 関数: ファイルから文字を読み取ります。
  5. peek() 関数: 次の文字を先読みしますが、ファイルからは削除しません。
  6. ignore() 関数: ファイル内の指定された数の文字を無視します。

次は、ファイルからデータを読み取る方法を示す簡単な例です:

#include <fstream>
#include <iostream>
using namespace std;

int main()
{
    // 创建文件流对象并关联文件
    ifstream file("example.txt");

    // 判断文件是否打开成功
    if (!file)
    {
        cout << "无法打开文件" << endl;
        return -1;
    }

    // 读取文件内容
    string str;
    while (getline(file, str))
    {
        cout << str << endl;
    }

    // 关闭文件
    file.close();
    return 0;
}
ログイン後にコピー

上記のコードでは、file という名前の入力ファイル ストリーム オブジェクトを作成し、それを関連付けます。ファイル example.txt にコピーします。 while ループでは、getline() 関数を呼び出すことによってファイルの内容が 1 行ずつ読み取られ、データの各行が文字列変数 str に格納されます。最後に、読み取った内容が cout を通じて出力されます。

3. ファイルへのデータの書き込み

C では、ファイル出力ストリーム オブジェクト (ofstream) を使用して、データをテキスト ファイルに書き込むことができます。一般的に使用される書き込み関数には次のものがあります:

  1. <<演算子: 単語または値を書き込みます。
  2. put() 関数: 文字を書き込みます。
  3. write() 関数: 指定された長さのデータを書き込みます。

次は、データをファイルに書き込む方法を示す簡単な例です:

#include <fstream>
#include <iostream>
using namespace std;

int main()
{
    // 创建文件流对象并关联文件
    ofstream file("example.txt");

    // 判断文件是否打开成功
    if (!file)
    {
        cout << "无法打开文件" << endl;
        return -1;
    }

    // 向文件中写入数据
    for (int i = 1; i <= 10; i++)
    {
        file << "This is line " << i << endl;
    }

    // 关闭文件
    file.close();
    return 0;
}
ログイン後にコピー

上記のコードでは、file という名前の出力ファイル ストリーム オブジェクトを作成し、それを関連付けます。ファイル example.txt にコピーします。 for ループでは、データは << 演算子を通じてファイルに書き込まれます。各ループで 1 行のテキスト データが書き込まれ、最後にファイルは close() 関数によって閉じられます。

4. ファイル ポインター

ファイル操作を実行するときは、ポインターを使用して現在のファイルの読み取りおよび書き込み場所を示す必要があります。ファイル ポインターは、ファイル位置インジケーターとも呼ばれ、ファイルの先頭から現在の位置までのバイト数を記録する、各ファイルによって維持される内部変数です。

C には、ファイル ポインタを操作するための以下の関数が用意されています。

  1. tellg() 関数: ファイルの読み取り位置を取得します。
  2. tellp()関数:ファイルの書き込み場所を取得します。
  3. seekg()関数:ファイルの読み込み位置を設定します。
  4. seekp()関数:ファイルの書き込み場所を設定します。

次は、ファイル ポインターの操作方法を示す簡単な例です。

#include <fstream>
#include <iostream>
using namespace std;

int main()
{
    // 创建文件流对象并关联文件
    fstream file("example.txt", ios::in | ios::out);

    // 判断文件是否打开成功
    if (!file)
    {
        cout << "无法打开文件" << endl;
        return -1;
    }

    // 获取、设置文件指针位置
    file.seekp(6); // 将文件写位置设置为6
    file.put('X'); // 在文件位置6处写入字符'X'

    file.seekg(0); // 将文件读位置设置为0
    char ch = file.get(); // 从文件位置0读取一个字符
    cout << "第一个字符是:" << ch << endl;

    // 关闭文件
    file.close();
    return 0;
}
ログイン後にコピー

上記のコードでは、file という名前のファイル ストリーム オブジェクトを作成し、それをファイル例.txt。ファイル ポインターを操作する前に、ファイルを開く必要があります。

この例では、seekp() 関数を使用してファイル ポインターの位置を 6 に設定し、次に put() 関数を使用してファイルの位置 6 に文字「X」を書き込みます。次に、seekg() 関数を使用してファイル ポインタの位置を 0 に設定し、get() 関数を使用してファイルの位置 0 から文字を読み取って出力します。

5. まとめ

以上がCを使ったテキストファイルの入出力の基本操作です。ファイル操作を行う場合は、ファイルを開く順番と閉じる順番や、ファイルポインタの位置の操作に注意する必要があります。テキストファイルの読み書きやポインタの位置決めなどの操作は非常に簡単ですが、よく使う機能や操作方法を覚えておく必要があります。

以上がC++ での入出力にテキスト ファイルを使用するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Golang を使用してファイルを安全に読み書きするにはどうすればよいですか? Golang を使用してファイルを安全に読み書きするにはどうすればよいですか? Jun 06, 2024 pm 05:14 PM

Go ではファイルを安全に読み書きすることが重要です。ガイドラインには以下が含まれます。 ファイル権限の確認 遅延を使用してファイルを閉じる ファイル パスの検証 コンテキスト タイムアウトの使用 これらのガイドラインに従うことで、データのセキュリティとアプリケーションの堅牢性が確保されます。

gho ファイルを削除できますか? gho ファイルを削除できますか? Feb 19, 2024 am 11:30 AM

gho ファイルは、NortonGhost ソフトウェアによって作成され、オペレーティング システムとデータのバックアップと復元に使用されるイメージ ファイルです。場合によっては、gho ファイルを削除できる場合もありますが、削除には注意が必要です。この記事では、ghoファイルの役割やghoファイルを削除する際の注意点、ghoファイルの削除方法を紹介します。まず、gho ファイルの役割を理解しましょう。 gho ファイルは、ハードディスク全体または特定のパーティションのイメージを保存できる圧縮システムおよびデータ バックアップ ファイルです。この種のバックアップ ファイルは通常、緊急時の回復に使用されます。

PHP8.0でのファイル操作:ファイル監視 PHP8.0でのファイル操作:ファイル監視 May 14, 2023 pm 02:21 PM

Web アプリケーションの継続的な開発により、PHP は Web 開発において最も重要なプログラミング言語の 1 つになりました。非常に柔軟なプログラミング言語である PHP の各バージョンには、さまざまなニーズやアプリケーション シナリオを満たすための新機能と最適化が備わっています。 PHP8.0版では、ファイル監視という非常に実用的なファイル操作機能が追加されました。この機能は、ファイルのバックアップ、ファイル同期、ログ監視など、ファイル変更の監視と処理が必要なアプリケーション シナリオに非常に適しています。この記事はあなたを連れて行きます

修正方法: Java ファイル操作エラー: ファイルの書き込みに失敗しました 修正方法: Java ファイル操作エラー: ファイルの書き込みに失敗しました Aug 26, 2023 pm 09:13 PM

解決方法: Java ファイル操作エラー: ファイルの書き込みに失敗しました Java プログラミングではファイル操作が必要になることが多く、ファイル書き込みは重要な機能の 1 つです。ただし、ファイル書き込みエラーが発生し、プログラムが正常に実行できなくなる場合があります。この記事では、この種の問題の解決に役立ついくつかの一般的な原因と解決策について説明します。間違ったパス: よくある問題は、間違ったファイル パスです。指定したパスにファイルを書き込もうとすると、パスが存在しないか、アクセス許可が不十分な場合、ファイルは書き込まれます。

Go プログラミングのヒント: ファイルからコンテンツを削除する Go プログラミングのヒント: ファイルからコンテンツを削除する Apr 04, 2024 am 10:06 AM

Go 言語では、ファイルの内容をクリアする 2 つの方法が提供されています。io.Seek と io.Truncate を使用する方法と、ioutil.WriteFile を使用する方法です。方法 1 では、カーソルをファイルの末尾に移動してからファイルを切り詰めます。方法 2 では、空のバイト配列をファイルに書き込みます。実際のケースでは、これら 2 つの方法を使用して Markdown ファイルのコンテンツをクリアする方法を示します。

Go言語によるファイル操作機能を学び、ファイルの暗号化、圧縮、アップロード、ダウンロード機能を実装する Go言語によるファイル操作機能を学び、ファイルの暗号化、圧縮、アップロード、ダウンロード機能を実装する Jul 29, 2023 pm 10:37 PM

Go 言語のファイル操作関数を学習し、ファイルの暗号化、圧縮、アップロード、ダウンロード機能を実装します。Go 言語は、オープンソースの静的型付けプログラミング言語であり、その効率的なパフォーマンスと簡潔な構文により、開発分野で広く普及しています。 Go 言語の標準ライブラリには豊富なファイル操作関数が用意されており、ファイルの読み書き、暗号化や圧縮、アップロードやダウンロードなどが非常に簡単に行えます。この記事では、Go言語のファイル操作関数を使って、ファイルの暗号化、圧縮、アップロード、ダウンロードの機能を実装する方法を紹介します。まず、関連する 3 つのファイルをインポートする必要があります

PHPファイルの操作例:CSVファイルの読み込み PHPファイルの操作例:CSVファイルの読み込み Jun 20, 2023 am 11:42 AM

PHP は、Web 開発で広く使用されている人気のあるプログラミング言語です。 Web アプリケーションでは、ファイル操作は基本的な一般的な機能です。この記事では、PHP を使用して CSV ファイルを読み込み、HTML テーブルに表示する方法を説明します。 CSV は、表形式のデータを Excel などの表計算ソフトウェアにインポートするために使用される一般的なファイル形式です。 CSV ファイルは通常、多くの行で構成され、各行はカンマ区切りの値で構成されます。通常、最初の行には列ヘッダーが含まれており、各列値の意味を説明します。ここではPHPを使用します

C++ を使用してファイル内の指定された場所にコンテンツを挿入するにはどうすればよいですか? C++ を使用してファイル内の指定された場所にコンテンツを挿入するにはどうすればよいですか? Jun 04, 2024 pm 03:34 PM

C++ では、ofstream クラスを使用して、ファイル内の指定された場所にコンテンツを挿入します。ファイルを開いて挿入ポイントを見つけます。使用

See all articles