(第五回)C# Windowsフォームアプリケーションで ユーザー登録画面を作成する

(第五回)C# Windowsフォームアプリケーションで ユーザー登録画面を作成する

目次

前回のおさらい
保存処理
実際の値保存処理
まとめ

前回のおさらい

前回はイベント処理とパネルコントロールについてご紹介しました。
今回は実際に入力したデータを保存する処理をご紹介します。

保存処理

保存した旨のメッセージだけではなく、実際に保存する処理を実装します。
下記のコードの 「StatusText.Text = “保存しました”; 」部分を二つ目のコードの内容に変更します。

<code>private void SaveButton_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("保存しますか?", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
            if (result == DialogResult.Yes)
            {
                StatusText.Text = "保存しました";
            }</code>

下記のコードに変更

<code>using (var sw = new System.IO.StreamWriter("save.txt", true, System.Text.Encoding.GetEncoding("shift_jis")))
                {
                    sw.Write("書きました");
                }</code>

変更後に実行し、登録画面で「保存」をクリックすると下の画像のように「書きました」と書かれたテキストファイルが保存されました。
こちらは追加したコードにて「save.txt」に「書きました」という文字を保存する処理を行っています。
最後に文字コードを引数にしています。
文字コードはファイルを書くときにどのような形態で書くかの約束事です。
書く側と読む側で一致していないと正しく読むことができません。
通常日本語と英語しか扱わない場合はShift-jisで問題ないです。

「sw.Write(“書きました”);」の部分で実際にファイルへ書き込んでいます。
この状態で保存を行うとsave.txtファイルに「書きました」と保存されます。
save.txtファイルは下記のフォルダーに生成されました。
【プログラムのあるフォルダー】\bin\Debug

実際の値保存処理

ファイルへの書き込みが確認できたので、実際の値を保存する処理に書き換えます。

<code>using (var sw = new System.IO.StreamWriter("save.csv", true, System.Text.Encoding.GetEncoding("shift_jis")))
                {
                    sw.Write(IdTextBox.Text + ",");
                    sw.Write(MailCheckBox.Checked + ",");
                    sw.Write(MailAdressTextBox.Text + ",");
                    if (MenRadioButton.Checked)
                    {
                        sw.Write("男性" + ",");
                    }
                    else
                    {
                        sw.Write("女性" + ",");
                    }

                    sw.Write(EnableComboBox.Text);
                    sw.WriteLine("");
                }</code>

画面の項目を「,」カンマ区切りで繋げて1行分のデータにしています。
カンマ区切りのcsv形式で保存しているため、ファイルの拡張子を「.txt」から「.csv」に変更しています。

上記の2ユーザーを実際に登録してみると「save.csv」という名前のcsvファイルが作成されます。
ファイルを開いてみると…
下の画像のようにcsv形式で値が出力されているのが分かります。

まとめ

今回は登録画面で登録したデータをcsv形式でファイル出力する部分を行いました。
次回はデータの一覧表示をする部分と画面遷移について紹介します。