2009-08-18 2 views
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"를 이름으로 사용하여 파일을 만든 다음 해당 파일에 줄을 씁니 까?File.Delete를 사용하여 파일을 삭제 한 다음 Streamwriter를 사용하여 동일한 파일을 만드시겠습니까?

실제로 라인을 볼 수 없어 혼란 스럽습니다. 은 파일을 다시 생성합니다. 또는 StreamWriter를 만드는 행위로 인해 파일이 자동으로 생성됩니까?

답변

3

Stream Writer는 파일이 없으면 만듭니다. 생성자에서이를 생성하므로 StreamWriter가 인스턴스화됩니다.

+0

내 Try() 문 안의 두 번째 줄은 파일을 만들 것입니까? –

+1

예 : "StreamWriter TheWriter = 새 StreamWriter (Properties.Settings.Default.WoWFolderLocation +"Data/realmlist.wtf "); " – Russell

+0

감사합니다. 정말 고마워요! –

1

StreamWriter 생성자에 FileStream 인스턴스를 전달하면 단순히 파일을 덮어 쓰도록 설정할 수 있습니다. 그냥 생성자와 함께 전달하십시오.

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

예 : 당신이 .Close 방법을 사용할 필요가 없습니다이 함께

또한
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); 
} 

. using() 함수가이를 수행합니다.

0

시도 System.IO.File.CreateText.

관련 문제