C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■96820 / )  C# csvファイルへの文字列書き込み
□投稿者/ ストーンヘッジ (1回)-(2021/02/16(Tue) 15:16:54)

分類:[C#] 

C#フォームアプリケーションで文字列をcsvファイルに書き込むプログラムを作成しています。


            SaveFileDialog sfd = new SaveFileDialog();

            sfd.FileName = "書き込みファイル.ini";
            sfd.InitialDirectory = @"";
            sfd.Filter = "書き込みファイル(*.csv)|*.csv|すべてのファイル(*.*)|*.*";
            sfd.FilterIndex = 1;
            sfd.Title = "保存先のファイルを選択してください";
            sfd.RestoreDirectory = true;
            sfd.OverwritePrompt = true;
            sfd.CheckPathExists = true;

            //ダイアログを表示する
            if (sfd.ShowDialog() == DialogResult.OK)
            {
                System.IO.Stream stream;
                stream = sfd.OpenFile();
                if (stream != null)
                {
                    System.IO.StreamWriter sw = new System.IO.StreamWriter(stream);

                    sw.Write(String1);
                }

                sw.Close();
                stream.Close();
            }

上記だと文字化けしてしまうので、StreamWriterでEncoding.GetEncoding("shift_jis") を使いたいのですが、

                    System.IO.StreamWriter sw = new System.IO.StreamWriter(stream,false,System.Text.Encoding.GetEncoding("shift_jis"));

だとコード自体がエラーになってしまいます。 saveFileDialog()を活用しつつ、StreamWriterでEncoding.GetEncoding("shift_jis")を使用するには
どうしたら良いでしょうか?

初心者的質問ですいません。

返信 編集キー/


管理者用

- Child Tree -