43853


C#でテキストボックスに表示された文字をCドライブ直下に出力したいのですがどうもうまくいきません。。  
どなたかご教授いただければ幸いです。

[code]

    using (var w = new System.IO.StreamWriter("test.csv", false, System.Text.Encoding.GetEncoding("shift_jis")))
    {
        w.Write(textBox.Text);
        w.Close();
    ｝
    
[/code]


CC BY-SA 4.0
2018-05-08T02:48:16.907
43852
2018-05-08T03:57:34.937
2018-05-08T03:57:34.937
4236
28442
question
c# windows
C#でCSVファイルへの出力


C:ドライブ直下にファイルを出力したいのであれば`StreamWriter`作成時に`C:\test.csv`のように完全パスを指定してください。ファイル名のみを指定した場合、通常はカレントディレクトリ＝実行ファイルのある場所に出力されることになります。

なお`C:\test.csv`を定数で表す場合、`"C:\\test.csv"`と`\`を重ねるか、`@"C:\test.csv"`と先頭に@をつける必要があります。

また`using (w)`内では`w.Close()`を呼ぶ必要はありません。


CC BY-SA 4.0
2018-05-08T03:05:35.337
43853
2018-05-08T03:05:35.337
5750
43852
answer


> Cドライブ直下に出力したい

Windowsでは通常権限でのCドライブ直下への書き込みは禁止されています。  
正確には Usersグループ
には書き込み権限が与えられておらず、Administratorsグループには与えられていますがUAC昇格（管理者で実行）が必要となっています。

Cドライブ直下は使用しないようアプリケーションを設計することをお勧めします。


CC BY-SA 4.0
2018-05-08T03:55:07.860
43856
2018-05-08T03:55:07.860
4236
43852
answer