1
public void LoadRealmlist()
{
    try
    {
        File.Delete(Properties.Settings.Default.WoWFolderLocation + 
            "Data/realmlist.wtf");

        StreamWriter TheWriter = 
            new StreamWriter(Properties.Settings.Default.WoWFolderLocation + 
            "Data/realmlist.wtf");

        TheWriter.WriteLine("this is my test string");
        TheWriter.Close();
    }
    catch (Exception)
    {       
    }            
}

私の方法はファイルを適切に削除し、「realmlist.wtf」という名前のファイルを作成してから、それに行を書き込みますか?

実際にファイルを再度作成する行が見えないので、ちょっと混乱しています。それとも、StreamWriter を作成すると自動的にファイルが作成されますか?

4

3 に答える 3

3

ファイルが存在しない場合、Stream Writer はファイルを作成します。コンストラクターで作成されるため、StreamWriter がインスタンス化されたときに作成されます。

于 2009-08-18T03:06:13.337 に答える
1

FileStream インスタンスを StreamWriter コンストラクターに渡すと、単純にファイルを上書きするように設定できます。コンストラクタと一緒に渡すだけです。

http://msdn.microsoft.com/en-us/library/system.io.filestream.filestream.aspx

例:

try
{
    using (FileStream fs = new FileStream(filename, FileMode.Create))
    {
        //FileMode.Create will make sure that if the file allready exists,
        //it is deleted and a new one create. If not, it is created normally.
        using (StreamWriter sw = new StreamWriter(fs))
        {
           //whatever you wanna do.
        }
    }
}
catch (Exception e)
{
    System.Diagnostics.Debug.WriteLine(e.Message);
}

また、これにより、メソッドを使用する必要がなくなります.Closeusing()関数はそれを行います。

于 2009-08-18T03:06:54.897 に答える
0

試してみてくださいSystem.IO.File.CreateText

于 2009-08-18T03:07:22.477 に答える