2013-02-28 58 views
0

我在製作Windows窗體應用程序。它是一個字生成器,可以從默認列表生成隨機單詞,也可以通過用戶輸入進行修改。我正在尋找一種方法來創建一個按鈕來保存列表,以便下次用戶運行應用程序時,他們將擁有與之前相同的列表。 txtaddverb是用戶輸入的文本框。缺失的按鈕只對名詞,形容詞和副詞列表做同樣的事情。製作一個按鈕,可以在下次運行程序時保存列表

這裏是我的代碼如下所示:

public class Lists 
    { 
     public static List<string> verbList = new List<string>() {"eat", "scramble", "slap", "stimulate"}; 

     public static Random randomverb = new Random(); 
    } 


public string pickRandomVerb() 

     { 
      return Lists.verbList[Lists.randomverb.Next(0, Lists.verbList.Count)]; 
     } 

public void button1_Click(object sender, EventArgs e) 

     { 
      if (Lists.verbList.Count > 0) verb.Text = pickRandomVerb(); 
     } 

public void button5_Click(object sender, EventArgs e) 

     { 
      Lists.verbList.Add(txtaddverb.Text); 
      txtaddverb.Clear(); 
     } 

public void button9_Click(object sender, EventArgs e) 

     { 
      Lists.verbList.Clear(); 
      verb.Clear(); 
      txtaddverb.Clear(); 
     } 

//below is the button that I want to save the list 

public static void button13_Click(object sender, EventArgs e) 

     { 
      //need help here 
     } 

回答

0

依賴。你想在哪裏保存輸入?在一個文本文件?在數據庫中?保存到一個文本

 // create a writer and open the file 
     TextWriter tw = new StreamWriter("date.txt"); 

     // write a line of text to the file 
     tw.WriteLine(DateTime.Now); 

     // close the stream 
     tw.Close(); 
+0

無論什麼是最簡單的。 – 2013-02-28 13:26:12

+0

更新了我的答案 – 2013-02-28 13:29:12

0

示例要編寫一個List<string>到一個文件:

File.WriteAllLines(path, verbList); 

這將創建文件,如果它不存在,或者以其他方式覆蓋它。

從文件中讀取數據:

List<string> verbList = File.ReadAllLines(path).ToList(); 
0

如果這個項目是多爲個人使用,那麼你可以只寫列表到一個文本文件和程序加載時讀回。 StreamReader和Streamwriter類可以爲此實現。有關示例代碼,請參見http://msdn.microsoft.com/en-us/library/aa903247%28v=vs.71%29.aspx

如果多人將使用您的應用程序,我會說保存列表數據庫將是一個更好的解決方案。這裏是一個很好的開始http://www.dreamincode.net/forums/topic/31314-sql-basics-in-c%23/#/如果你沒有SQL服務器,可以根據MS Access調整教程。 (你會使用System.Data.OleDb而不是System.Data.SqlClient)

這裏有很多文章介紹讀寫文本文件或數據庫的信息。做一點搜索,如果我發佈的兩個鏈接沒有你要找的東西,你應該能夠找到適合你需求的東西。

相關問題