Поставить дату перед именем файла XML - PullRequest
0 голосов
/ 15 июня 2009

У меня есть следующий код:

XmlSerializer SerializeObj = new XmlSerializer(dirs.GetType());  
TextWriter WriteFileStream = new StreamWriter(@"G:\project\tester.xml");  
SerializeObj.Serialize(WriteFileStream, dirs);  
WriteFileStream.Close();  

Я пытаюсь поставить метку даты / времени в FRONT имени файла xml. Поэтому, используя этот пример, у меня будет что-то вроде 0615_Tester.xml

Есть идеи, как это сделать? Я хочу убедиться, что могу указать дату и время __ [имя_файла] .xml и при этом указать, что это должно быть в моем G: \

Заранее спасибо.

Ответы [ 5 ]

1 голос
/ 15 июня 2009

Это просто достигается с помощью 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?)

0 голосов
/ 15 июня 2009

Использовать строку. Формат - например:

string dateString = "0615";
string fileName = string.Format(@"G:\project\{0}_tester.xml", dateString);

... = new StreamWriter(fileName);

Создание dateString должно быть тривиальным из DateTime.Now.

0 голосов
/ 15 июня 2009

Попробуйте что-то вроде этого:

string filePath = string.Format("G:\\project\\{0}tester.xml", Date.Now.ToString("DDMM"));
TextWriter WriteFileStream = new StreamWriter(filePath);
0 голосов
/ 15 июня 2009

Я предполагаю, что файл уже существует. Таким образом, вам придется скопировать файл и удалить старый. Как это:

File.Copy(OldFileName, NewFileNameWithDate);

File.Delete(OldFileName);
0 голосов
/ 15 июня 2009
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);  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...