ASP.NET移动文件,本来想用那个Dir****.Move的方法的,但是不知道怎么回事总是出错,算了,还是自己写个方法遍历文件一个一个移动吧。
1
///
<summary>
2 /// 移动目录内的文件到另一目录
3 /// </summary>
4 /// <param name="sorDir"> 源目录,如:Server.MapPath("~/product_image/44/8813/") </param>
5 /// <param name="desDir"> 目标目录,如:Server.MapPath("~/product_image/141/8813/") </param>
6 public static void MoveDirFile( string sorDir, string desDir)
7 {
8 if ( ! Directory.Exists(sorDir))
9 {
10 return ;
11 }
12 if ( ! Directory.Exists(desDir))
13 {
14 Directory.CreateDirectory(desDir);
15 }
16 foreach ( string item in Directory.GetFiles(sorDir))
17 {
18 try
19 {
20 FileInfo fi = new FileInfo(item);
21 string tmp = desDir + fi.Name;
22 if (File.Exists(tmp))
23 {
24 File.Delete(tmp);
25 }
26 fi.MoveTo(tmp);
27 }
28 catch (Exception)
29 {
30 throw ;
31 }
32 }
33 Directory.Delete(sorDir, true );
34 }
2 /// 移动目录内的文件到另一目录
3 /// </summary>
4 /// <param name="sorDir"> 源目录,如:Server.MapPath("~/product_image/44/8813/") </param>
5 /// <param name="desDir"> 目标目录,如:Server.MapPath("~/product_image/141/8813/") </param>
6 public static void MoveDirFile( string sorDir, string desDir)
7 {
8 if ( ! Directory.Exists(sorDir))
9 {
10 return ;
11 }
12 if ( ! Directory.Exists(desDir))
13 {
14 Directory.CreateDirectory(desDir);
15 }
16 foreach ( string item in Directory.GetFiles(sorDir))
17 {
18 try
19 {
20 FileInfo fi = new FileInfo(item);
21 string tmp = desDir + fi.Name;
22 if (File.Exists(tmp))
23 {
24 File.Delete(tmp);
25 }
26 fi.MoveTo(tmp);
27 }
28 catch (Exception)
29 {
30 throw ;
31 }
32 }
33 Directory.Delete(sorDir, true );
34 }