文件夹中的word文件全部以日期命名,如20120717。现利用一个button控件,打开前一天的word副本,并将其命名为当天日期,代码如何编写?
不只是需要一个备份,如只要一个复制的备份,File.Copy一条命令即可搞定,现在的问题是,如何实现复制出来的文件的文件名自动以当天日期进行命名?请大神赐教~
追答不明白你的意思,是在复制的时候就改为当天还是将已经复制出来的改为当天
追问就是将复制出来的word名以当天日期命名,这样,在一个文件夹里面的所有word都以日期命名,一个对应一天的。
追答还是不大明白你的意思,1若你说的就是将一个文件夹中的doc文件名以时间命名,就没必要提到备份,2若你说的是在备份时的名字改为日期时间,是1还是2
如果是1:
FileInfo file=new FileInfo(sourcefile );
string str = file.CreationTime.ToString ("yyyyMMdd") ;
File.Move(sourcefile, "e:/" + str + ".doc");
比如说,昨天的那个文件名为20120717,那么我今天要得到的是一个文件名为20120718的文件,这个文件是20120717那个文件的副本(就是20120717复制过来的,后面我再对此文件内容进行修改保存,这是后话),这下明白了吧?如何用C#实现呢?
已经成功实现,仍然谢谢你。
嗯,可否写出大概的代码?新手菜鸟,请多指教。如果成功,我将加分。
追答获取日期的方式是DateTime.Now
如果要格式化那么就是DateTime.Now.ToString("yyyymmdd")
File.Copy的方法原型是:
publicstaticvoid Copy(
string sourceFileName,
string destFileName
)
获取前一天时间的方法为
DateTime dt=DateTime.Now.AddDays(-1)
还要我把代码写出来吗?
DateTime.Now.ToString("yymmdd");
DateTime t = DateTime.Now;
DateTime dt = DateTime.Now.AddDays(-1);
File.Copy(@"E:\wf\dt.doc",@"E:\wf\t.doc");
string path1 = @"E:\wf\t.doc";
System.Diagnostics.Process.Start(path1);
这是错的,提示找不到E:\wf\dt.doc。如何修改呢?
你这只是创建一个word吧,如果复制上一天的word,并以当天日期重新命名呢?