[英]How to give a dynamic name for an XML file while creating XML
我是编程新手。 我正在使用Windows窗体创建一个XML文件,而我的XML文件的名称是Windows窗体的名称字段文本框文本,它的工作正常,但是如果该文件已经可用,我想给出新的名称,但我可以给出不同的名称只有一次。 例如,如果“ dog.xml”已经存在,那么我能够创建dog1.xml文件,那么每当我创建任何新文件时,“ dog1.xml”文件的内容都会被新文件内容替换,但我想创建“ dog11.xml”或“ dog2.xml”文件
private void btnSave_Click(object sender, EventArgs e)
{
path = rtxtName.Text + ".xml";//name of a xml file is name of WPF 'name' field
doc = new XmlDocument(); //Here i am creating the xmldocument object
doc.CreateTextNode(path);
if (!System.IO.File.Exists(path))//if there is no file exists then
{
CreateNewXMLDoc();
}
else
{
path = rtxtName.Text + "1.xml"; //If the file is already avaliable
CreateNewXMLDoc();
}
}
public void CreateNewXMLDoc() //This method is for creating my xml file
{
XmlDeclaration declaration = doc.CreateXmlDeclaration("1.0", "UTF-8", "yes");
XmlComment comment = doc.CreateComment("This is a generated XML file");
doc.AppendChild(declaration);
doc.AppendChild(comment);
doc.AppendChild(doc.CreateElement("root"));
}
private void btnSave_Click(object sender, EventArgs e)
{
path = rtxtName.Text;//name of a xml file is name of WPF 'name' field
doc = new XmlDocument(); //Here i am creating the xmldocument object
string tempPath = path;
int counter = Properties.Settings.Default.Counter;
while(System.IO.File.Exists(tempPath))
{
counter++;
tempPath = path + counter + ".xml";
}
Properties.Settings.Default.Counter = counter;
Properties.Settings.Default.Save();
doc.CreateTextNode(path);
CreateNewXMLDoc();
}
如果您希望自己喜欢并遵循Microsoft的标准,则可以更改此路径,您可以构建以下内容-Copy.xml,然后构建某些内容-Copy(1).xml等。
tempPath = path + "(" + counter + ")" + ".xml";
编辑
更新以在应用程序重新启动时保留计数器
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.