我正在尝试将ListBox项目保存在文本文件中。 我从属性中添加的项目:
我的代码是:
private void button1_Click(object sender, EventArgs e)
{
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
using (FileStream S = File.Open(saveFileDialog1.FileName, FileMode.CreateNew))
using (StreamWriter st = new StreamWriter(S))
foreach (string aa in listBox1.Items)
st.WriteLine(listBox1.Items);
}
}
文本文件中的输出是:System.Windows.Forms.ListBox + ObjectCollection
答案 0 :(得分:0)
只需将aa
用于writeLine
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
using (FileStream S = File.Open(saveFileDialog1.FileName, FileMode.CreateNew))
{
using (StreamWriter st = new StreamWriter(S))
{
foreach (var aa in listBox1.Items)
st.WriteLine(aa.ToString());
}
}
}
答案 1 :(得分:0)
正如@davidsbro所提到的,您希望aa
位于st.Writeline
中,因为它是实际的字符串。 listBox1.Items给出了一个Writel无法处理的类,因为它不知道你想从Items
得到什么。所以它输出的名称就是你得到的结果。如果您需要有关该Items
类的所有属性和其他信息,则必须将其序列化并写入该文件。