我有以下代码:
XmlSerializer SerializeObj = new XmlSerializer(dirs.GetType());
TextWriter WriteFileStream = new StreamWriter(@"G:\project\tester.xml");
SerializeObj.Serialize(WriteFileStream, dirs);
WriteFileStream.Close();
我正在尝试在xml文件名的FRONT中添加日期/时间戳。因此,使用这个例子,我有类似0615_Tester.xml
的东西关于如何做到这一点的任何想法?我想确保我可以做日期/时间__ [filename] .xml并仍然指定它在我的G:\
提前致谢。
答案 0 :(得分:1)
使用System.IO.Path:
即可实现string path = "G:\\projects\\TestFile.xml";
string NewPath = System.IO.Path.GetDirectoryName(path) +
System.IO.Path.DirectorySeperatorChar +
DateTime.Now.ToString() +
System.IO.Path.GetFileName(path);
您可以添加一个使用参考来保持打字,或者以您想要的任何方式格式化日期,只要它是一个字符串。建议使用DirectorySeperator变量,尽管您可能正在为Windows编程如果使用.NET(Mono?)
答案 1 :(得分:0)
string yourDateString = DateTime.Now.ToString(); // replace with any way you want to get your date string
string filename = "G:\\project\\" + yourDateString + "_tester.xml";
TextWriter WriteFileStream = new StreamWriter(filename);
答案 2 :(得分:0)
尝试这样的事情:
string filePath = string.Format("G:\\project\\{0}tester.xml", Date.Now.ToString("DDMM"));
TextWriter WriteFileStream = new StreamWriter(filePath);
答案 3 :(得分:0)
我假设该文件已存在。因此,您必须复制该文件并删除旧文件。像这样:
File.Copy(OldFileName, NewFileNameWithDate);
File.Delete(OldFileName);
答案 4 :(得分:0)
使用string.Format - 例如:
string dateString = "0615";
string fileName = string.Format(@"G:\project\{0}_tester.xml", dateString);
... = new StreamWriter(fileName);
从DateTime.Now。
构建“dateString”应该是微不足道的