如果文件存在,我想将文件移动到文件夹中,并在移动时将日期附加到文件中。我收到错误"不支持给定路径的格式" 虽然我已将日期转换为字符串,但这是在触发的事件中这段代码。
XAML:
<add key ="Directory" value ="C:\FILE WATCHER TEST FOLDER\"/>
<add key ="File name" value ="update1"/>
<add key="extension" value =".txt"/>
<add key ="Folder name" value ="archive updates\"/>
代码背后:
DateTime date = DateTime.Parse("17/08/2012",ukCulture.DateTimeFormat);
string theDate = Convert.ToString(date);
string directory = ConfigurationManager.AppSettings["Directory"];
string file = ConfigurationManager.AppSettings["File name"];
string folder = ConfigurationManager.AppSettings["Folder name"];
string extension = ConfigurationManager.AppSettings["extension"];
string file_exe = file + extension;
string file_theDate = file + "-" + theDate;
string file_theDate_exe = file_theDate + extension;
string dir_fol = System.IO.Path.Combine(directory, folder);
string dir_file_exe = System.IO.Path.Combine(directory, file_exe);
string dir_file_theDate_exe = System.IO.Path.Combine(dir_fol, file_theDate_exe);
if (File.Exists(dir_file_exe))
{
update.readNewFile();
update.updatePaf();
if (!Directory.Exists(dir_fol))
{
//create it move it
System.IO.Directory.CreateDirectory(dir_fol);
File.Move(dir_file_exe,dir_file_theDate_exe);
}
else
{
// move it
if (File.Exists(dir_file_exe))
{
File.Move(dir_file_exe, dir_file_theDate_exe);
}
答案 0 :(得分:0)
DateTime date = DateTime.Parse("17/08/2012",ukCulture.DateTimeFormat);
你的道路上不能有正斜杠。
您可以在使用该路径之前删除它们(以及其他非法字符),请查看:How to remove illegal characters from path and filenames?
答案 1 :(得分:0)
请使用theDate.ToString({format as you need})
。可能是您的语言环境中的日期格式包含“坏”符号(斜杠)。