0

我有一个跟踪程序,可以在保存或自动保存期间保存隐藏的 XML 文件,以防用户意外关闭程序并需要重新加载它。它被导入到数据集和数据表中。

下面是 WriteXML 和 ReadXML 的代码:

写XML:

 private void SaveloadFile()
    {
        string Timefor = Properties.Settings.Default.DateFormat;
        System.Data.DataTable dt = (System.Data.DataTable)dataGridView1.DataSource;
        string Filelocation = Properties.Settings.Default.SaveLocation.ToString() + "_" + System.DateTime.Today.ToString(Timefor) + ".xml";
        try
        {
            dt.WriteXml(Filelocation, XmlWriteMode.WriteSchema);
            FileInfo xm = new FileInfo(Filelocation);
            xm.Attributes = FileAttributes.Hidden;


        }
        catch(System.Exception err)
        {
            MessageBox.Show("Ah poop, Something went wrong\n" + err, "Oh poop", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
    }

读取XML:

        public void ReadXML(string Filepath)
    {
        try
        {
            dt.ReadXml(Filepath);
            ds.Tables.Add(dt);

            dataGridView1.DataSource = ds.Tables[0];

        }
        catch (System.Exception err)
        {
            MessageBox.Show("Ah poop, Something went wrong\n" + err, "Oh poop", MessageBoxButtons.OK, MessageBoxIcon.Information);
            CreateDataBase();
        }
    }

它似乎有效。尽管在打开应用程序并尝试保存当前工作后,我明白了。

这只发生在我加载程序并尝试保存时。

我查看了代码,我想我把它归结为 readxml 阅读后不放手。尽管我怀疑 writexml 无法正常工作。

我环顾四周,似乎找不到解决此错误的方法。

如果有人能告诉我代码有什么问题,那就太好了!

4

0 回答 0