C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で配列の内容をファイルに書き込む方法:StreamWriterとStreamReaderの基本

C#では、StreamWriterクラスを使うことで、文字列配列の内容を簡単にテキストファイルへ書き出すことができます。さらに、書き込んだファイルはStreamReaderを使って読み込み、内容を確認できます。本記事では、その基本的な手順をサンプルコード付きで解説します。

1. 文字列配列の準備

まず、ファイルに書き込むための文字列配列を用意します。

string[] names = new string[] { "Jack", "Tom" };

この例では、「Jack」と「Tom」という2つの名前を持つ配列を作成しています。

2. StreamWriterで配列の内容を書き込む

foreachループを使って配列の各要素を順番に取り出し、WriteLineメソッドで1行ずつファイルに書き込みます。

using (StreamWriter sw = new StreamWriter("names.txt")) {
    foreach (string s in names) {
        sw.WriteLine(s);
    }
}

usingステートメントを使用することで、処理が終わった時点でライターが自動的に閉じられ、リソースリークを防ぐことができます。これはファイル操作において重要なベストプラクティスです。

3. 完全なサンプルコード

以下は、配列の内容をファイルに書き込み、その後ファイルから読み込んでコンソールに表示する完全なプログラム例です。

using System;
using System.IO;

namespace FileApplication {
    class Program {
        static void Main(string[] args) {
            // 書き込む文字列配列
            string[] names = new string[] { "Jack", "Tom" };

            // 配列の内容をファイルに書き込む
            using (StreamWriter sw = new StreamWriter("names.txt")) {
                foreach (string s in names) {
                    sw.WriteLine(s);
                }
            }

            // ファイルから1行ずつ読み込んで表示する
            string line = "";
            using (StreamReader sr = new StreamReader("names.txt")) {
                while ((line = sr.ReadLine()) != null) {
                    Console.WriteLine(line);
                }
            }
            Console.ReadKey();
        }
    }
}

実行結果

Jack
Tom

4. コードのポイント解説

  • StreamWriter: テキストデータをファイルに書き込むためのクラスです。WriteLineメソッドは、文字列に改行を付けて書き込みます。
  • StreamReader: テキストファイルを読み込むためのクラスです。ReadLineメソッドは1行ずつ読み取り、ファイルの末尾に達するとnullを返します。
  • usingステートメント: ストリームの破棄(Dispose)を自動的に行い、ファイルハンドルの解放漏れを防ぎます。

このように、C#のストリームクラスを活用すれば、配列データのファイル入出力をシンプルかつ安全に実装できます。大量のデータを扱う場合も、同じパターンを応用することで効率的な処理が可能になります。

  1. C#の多次元配列とは?2次元配列の宣言方法と使い方を実例付きで解説

    C#では、多次元配列を扱うことができます。int型の2次元配列は、次のように宣言します。int[] a;多次元配列の中で最もシンプルな形式が2次元配列です。2次元配列とは、1次元配列を要素として持つ配列、すなわち「配列の配列」のような構造をイメージすると分かりやすいでしょう。例えば、次の図は3行4列の2次元配列を表しています。多次元配列の使用例ここからは、実際にC#で多次元配列を操作するサンプルコードを見ていきましょう。以下の例では、5行2列の2次元配列を宣言・初期化し、入れ子になったforループですべての要素を出力します。using System; namespace ArrayApplic

  2. Pythonで学ぶ畳み込み(Convolution)の基礎:画像から特徴を抽出する仕組みと実装

    本記事では、Python 3.x(またはそれ以前のバージョン)における「畳み込み(Convolution)」について解説します。畳み込みは、ニューラルネットワークや画像の特徴抽出において中心的な役割を果たす基本的な操作です。推奨環境 − Jupyter Notebook前提条件 − NumPy および Matplotlib がインストール済みであることインストール方法必要なライブラリが未インストールの場合は、以下のコマンドで導入できます。>>> pip install numpy >>> pip install matplotlib畳み込みとは畳み込みとは、