C#:キーボードから入力した文字をファイルに保存する

c_charp_logo C#

C#のコンソールアプリでキーボードから入力した文字列をStreamWriterクラスを使ってファイル(テキスト形式)に保存する方法です。

今回プログラムの先頭で

using System.IO;
using System.Text;

を記述しています。
System.IOは、StreamWriterクラスを使うため、System.Textは、文字コード定数Encoding.UTF8を使うために指定しています。
StreamWriterの引数の意味ですが、

StreamWriter file = new StreamWriter(“moji.txt”, true, Encoding.UTF8);

第1引数: 読み込むファイル名
第2引数: 追加書き込み形式=true, ファイルの新規作成=false
第3引数: ファイルの文字コード形式

となっています。
今回は、第2引数にtrueを指定しているため、実行を繰り返すと前回保存した文字の後に追加書き込みします。

VisualStudioで ファイル->新規作成->プロジェクト から「コンソールアプリ」を選択して作成し以下のコードを記述して確認してください。

保存されるファイルmoji.txtの作成される場所ですが、通常であれば実行形式ファイルと同じ場所

ドキュメントフォルダ >Visual Studio 2017 >Projects >《作成したプロジェクトファイル名》 >《作成したプロジェクトファイル名》 >bin >Debug

となります。

using System;
using System.IO;
using System.Text;

namespace キーボードから入力した文字列をファイルに保存する
{
	class Program
	{
		static void Main(string[] args)
		{
			try
			{
				// 文字列入力
				Console.Write("ファイル書き込み> ");
				string moji = Console.ReadLine();

				// ファイルを開く(第2引数: 追加書き込み形式=true, ファイルの新規作成=false)
				StreamWriter file = new StreamWriter("moji.txt", true, Encoding.UTF8);
				
				// ファイルに書き込む
				file.WriteLine(moji);
				
				// ファイルを閉じる
				file.Close();
			} catch(Exception e)
			{
				Console.WriteLine(e.Message);
			}
		}
	}
}

コメント

タイトルとURLをコピーしました