将ListBox项目保存到文件

时间:2017-09-29 14:10:09

标签: c# wpf file listbox

我正在尝试创建一个文件,将所有列表框项添加到文件中。我以后可以打开文件并再次显示所有列表框项目。

我当前的代码无效,它不会创建文件或保存到现有文件。

获取创建文件名称/ path

的函数
private void mnuFileSaveAs_Click(object sender, EventArgs e)
    {
        string fileName = "";
        SaveFileDialog sfd = new SaveFileDialog();
        if (sfd.ShowDialog() == DialogResult.OK)
        {
            if(fileName == String.Empty)
            {
                mnuFileSaveAs_Click(sender, e);
            }
            else
            {
                fileName = sfd.FileName;
                writeToFile(fileName);
            }

        }

    }

写入文件的功能

private void writeToFile(string fileName)
        {
            System.IO.StreamWriter SaveFile = new System.IO.StreamWriter(fileName);
            foreach (var item in listBox.Items)
            {
                SaveFile.WriteLine(item.ToString());
            }
        }

enter image description here

1 个答案:

答案 0 :(得分:2)

嗯,你没有指定错误,但我的猜测是它没有工作,因为你没有关闭StreamWriter。

using (System.IO.StreamWriter SaveFile = new System.IO.StreamWriter(fileName))
{
    foreach (var item in listBox.Items)
        SaveFile.WriteLine(item.ToString());
}

或者您可以拨打SaveFile.Close()而不是using