为UML文件创建读/写功能

时间:2016-10-10 22:18:15

标签: c#

我正在开发一个UML软件/编辑器,用户可以在其中创建一个类图。但是,我想实现一个保存的函数和一个可以加载现有UML文件的函数。我现在可以做的是打开/保存带有文本的文件,该文件写在我所做的应用程序的文本框中:

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (GemDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                File.WriteAllText(GemDialog.FileName, textBox.Text);
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            if (LoadDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                StiLabel.Text = LoadDialog.FileName;
                textBox.Text = File.ReadAllText(StiLabel.Text);
            }
        }
    }
}

我知道我可以实现一个可以将其保存在.jpg中的功能,但这不是我想要做的。我只想让用户保存他的作品然后再打开它。

1 个答案:

答案 0 :(得分:0)

需要做出更多努力才能做到正确。使用属性和[XmlAttribute]标记它们(否则,默认情况下将序列化所有公共属性)。然后,您可以将所有内容序列化为XML,这是保存设置/配置的一个很好的选择:

XmlSerializer serializer = new XmlSerializer(typeof(UMLModel));
FileStream myFileStream = new FileStream("c:\myUML.xml",FileMode.Open);

在保存之前确保文件存在,或者使用SaveFileDialog创建文件。 UMLModel是您的类,它包含您需要保存的所有数据。请read作为起点。