保存并返回列表框内容C#

时间:2013-06-14 08:53:02

标签: c# .net streamreader ini streamwriter


我有一个关于从列表框中保存内容并将其放在.ini文件中的问题。
我也想在程序启动时检索信息并将其放回列表框中。
我有两个列表框,可以调用它们listBox1listBox2
然后按1按钮调用selectbttn
单击选择按钮时,必须保存listBox2中的内容。 ,br /> 我该如何解决这个问题?

这是包含2个列表框的代码,id ont具有选择按钮的代码。 您在代码中看到的按钮是一个添加按钮,用于将listbox1中的内容添加到列表框2中。

   private void add_button_Click(object sender, EventArgs e)
    {
        try
        {

            if (list_selected.Items.Contains(List_selection.SelectedItem))
            {
                MessageBox.Show("Can not add the type twice.");
            }
            else
            {
                list_selected.Items.Add(List_selection.SelectedItem);
            }
        }
        catch 
        {

            {
                MessageBox.Show("No type selected");
            }

        }
    }

2 个答案:

答案 0 :(得分:2)

您需要使用StreamWriter保存到文件中。您可以执行以下操作:

public void SaveFile_Click(object sender, EventArgs e) 
{
   using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\YourFile.ini"))
   {
       foreach (var item in list_selected.Items)
       {
         file.WriteLine(item.ToString());
       }
   }
}

http://msdn.microsoft.com/en-us/library/vstudio/8bh11f1k.aspx

您可以使用StreamReader在应用程序加载时回读.ini文件的内容。因为你最初没有提供代码,所以我会留给你。

答案 1 :(得分:2)

File.WriteAllLines("test.ini", 
                listbox.Items.Cast<ListItem>().Select(i => i.Text).ToArray());

加载

 listbox.Items.AddRange(File.ReadAllLines("test.ini")
                   .Select(l => new ListItem(l)).ToArray());