DOBON.NET DOBON.NETプログラミング掲示板過去ログ

テキストファイルへの書き込み

環境/言語:[OS : Windows XP Home Edition / 言語 : Visual Basic .NET]
分類:[.NET]

【解決したい問題】

お世話になっています。
BBです。

ファイル操作に関する質問です。

Dim myPass As String = Directory.GetCurrentDirectory
Dim myFile As FileStream = File.OpenWrite(myPass & "\" & TextBox1.text & ".txt")
Dim mySW As New StreamWriter(myFile)



mySW.WriteLine("xxxxx")
mySW.WriteLine("xxxxx")




今、上記のようなコードにて、
テキストファイルに書き込みしています。
書き込みはうまくいっているようです。

しかし・・・
例えば、10行のテキストが書き込まれたファイルに、
再度、4行の書き込みを行うと、
最初の4行目までの内容が修正されて、
残りの6行がそのまま残ってしまっています。

以前の書き込み内容がクリアされた状態で、
新たな内容を書き込みたいのですが、
(上書保存のような状態を意味しています。)
何か良い方法がございましたら、是非、教えていただきたいです。

よろしくお願いいたします。
お世話になります。

■No13629に返信(BBさんの記事)
↓このコンストラクタを使ってインスタンス生成し、
第2引数をFalseにしてやればOKかと思いますが。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemiostreamwriterclassctortopic4.asp
sw1 = New StreamWriter( "Hoge.txt", False)
falseなら上書き(trueなら追加)

■No13629に返信(BBさんの記事)
> 【解決したい問題】
> > お世話になっています。
> BBです。
> > ファイル操作に関する質問です。
> > Dim myPass As String = Directory.GetCurrentDirectory
> Dim myFile As FileStream = File.OpenWrite(myPass & "\" & TextBox1.text & ".txt")
> Dim mySW As New StreamWriter(myFile)
> ・
> ・
> ・
> mySW.WriteLine("xxxxx")
> mySW.WriteLine("xxxxx")
> ・
> ・
> ・
> > 今、上記のようなコードにて、
> テキストファイルに書き込みしています。
> 書き込みはうまくいっているようです。
> > しかし・・・
> 例えば、10行のテキストが書き込まれたファイルに、
> 再度、4行の書き込みを行うと、
> 最初の4行目までの内容が修正されて、
> 残りの6行がそのまま残ってしまっています。
> > 以前の書き込み内容がクリアされた状態で、
> 新たな内容を書き込みたいのですが、
> (上書保存のような状態を意味しています。)
> 何か良い方法がございましたら、是非、教えていただきたいです。
> > よろしくお願いいたします。
BBです。

なおこさん、abさん、返信、ありがとうございます。

教えていただいた方法で、うまくいきました。

本当にありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板