2014-12-03 34 views
0

我已經使用此代碼爲用戶創建登錄,但是如果我嘗試添加更多,則會覆蓋當前的登錄。我試圖在文件模式下使用append,給我錯誤信息。如何在C#控制檯中爲多個用戶創建登錄使用文件流程序

 public void AddNewUser() 
    { 
     Console.Clear(); 
     Console.WriteLine("Creating New User"); 
     String Username, Password = string.Empty; 
     Console.WriteLine("Enter The UserName"); 
     Username = Console.ReadLine(); 
     Console.WriteLine("Enter The Passwrod for the User"); 
     Password = Console.ReadLine(); 
     StreamWriter sw = new StreamWriter(File.Create("C:/Users/Olasunky/Documents/Visual Studio 2012/Projects/TheFileVersionMaintenanceUtility/Password/UserNameAndPassword.txt")); 
     sw.WriteLine(Username); 
     sw.WriteLine(Password); 
     sw.Close(); 

     Console.WriteLine("Done...."); 
    } 
+0

您可以谷歌的'文件IO操作',可以解決您的問題。如果你只是想追加文本。或者你可以看看[Here](http://msdn.microsoft.com/en-us/library/system.io.file.appendtext(v = vs.110).aspx) – 2014-12-03 12:17:52

+0

File.OpenText()? – 2014-12-03 12:19:42

回答

0

這是因爲您在每次執行時覆蓋文件。

File.Create - 創建一個新文件。如果在同一路徑上有一個具有相同名稱和相同擴展名的文件,它將刪除舊文件並創建一個新文件。 看看File.AppendText,這可能會幫助你解決問題。

另外,在C#中,捕獲異常很重要。它可能會給你一個錯誤信息,因爲沒有文件或者你正在使用File.AppendText錯誤。

0

如果要將數據追加到file.false以覆蓋文件。如果指定的 文件不存在,則此參數不起作用,並且構造函數會創建 新文件。

 static void Main(string[] args) 
     { 
      Console.Clear(); 
      Console.WriteLine("Creating New User"); 
      String Username, Password = string.Empty; 
      Console.WriteLine("Enter The UserName"); 
      Username = Console.ReadLine(); 
      Console.WriteLine("Enter The Passwrod for the User"); 
      Password = Console.ReadLine(); 
      StreamWriter sw = new StreamWriter("D:/UserNameAndPassword.txt",true); 
      sw.WriteLine(Username); 
      sw.WriteLine(Password); 
      sw.Close(); 
      Console.WriteLine("Done...."); 
     } 
相關問題