using system;
using system.io;
using system.xml;
namespace zhzuo
///
/// filedirectoryutility 類,方法不包含異常處理
///
public class filedirectoryutility
///
/// 路徑分割符
///
private const string path_split_char = "//";
///
/// 建構函式
///
private filedirectoryutility()
///
/// 複製指定目錄的所有檔案,不包含子目錄及子目錄中的檔案
///
/// 原始目錄
/// 目標目錄
/// 如果為true,表示覆蓋同名檔案,否則不覆蓋
public static void copyfiles(string sourcedir,string targetdir,bool overwrite)
copyfiles(sourcedir,targetdir,overwrite,false);
///
/// 複製指定目錄的所有檔案
///
/// 原始目錄
/// 目標目錄
/// 如果為true,覆蓋同名檔案,否則不覆蓋
/// 如果為true,包含目錄,否則不包含
public static void copyfiles(string sourcedir,string targetdir,bool overwrite,bool copysubdir)
//複製當前目錄檔案
foreach(string sourcefilename in directory.getfiles(sourcedir))
string targetfilename = path.combine(targetdir,sourcefilename.substring(sourcefilename.lastindexof(path_split_char)+ 1));
if(file.exists(targetfilename))
if(overwrite == true)
file.setattributes(targetfilename,fileattributes.normal);
file.copy(sourcefilename,targetfilename,overwrite);
else
file.copy(sourcefilename,targetfilename,overwrite);
//複製子目錄
if(copysubdir)
foreach(string sourcesubdir in directory.getdirectories(sourcedir))
string targetsubdir = path.combine(targetdir,sourcesubdir.substring(sourcesubdir.lastindexof(path_split_char) +1));
if(!directory.exists(targetsubdir))
directory.createdirectory(targetsubdir);
copyfiles(sourcesubdir,targetsubdir,overwrite,true);
///
/// 剪下指定目錄的所有檔案,不包含子目錄
///
/// 原始目錄
/// 目標目錄
/// 如果為true,覆蓋同名檔案,否則不覆蓋
public static void movefiles(string sourcedir,string targetdir,bool overwrite)
movefiles(sourcedir,targetdir,overwrite,false);
///
/// 剪下指定目錄的所有檔案
///
/// 原始目錄
/// 目標目錄
/// 如果為true,覆蓋同名檔案,否則不覆蓋
/// 如果為true,包含目錄,否則不包含
public static void movefiles(string sourcedir,string targetdir,bool overwrite,bool movesubdir)
//移動當前目錄檔案
foreach(string sourcefilename in directory.getfiles(sourcedir))
string targetfilename = path.combine(targetdir ,sourcefilename.substring(sourcefilename.lastindexof(path_split_char) + 1));
if(file.exists(targetfilename))
if(overwrite == true)
file.setattributes(targetfilename,fileattributes.normal);
file.delete(targetfilename);
file.move(sourcefilename,targetfilename);
else
file.move(sourcefilename,targetfilename);
if(movesubdir)
foreach(string sourcesubdir in directory.getdirectories(sourcedir))
string targetsubdir = path.combine(targetdir ,sourcesubdir.substring(sourcesubdir.lastindexof(path_split_char) + 1));
if(!directory.exists(targetsubdir))
directory.createdirectory(targetsubdir);
movefiles(sourcesubdir,targetsubdir,overwrite,true);
directory.delete(sourcesubdir);
///
/// 刪除指定目錄的所有檔案,不包含子目錄
///
/// 操作目錄
public static void deletefiles(string targetdir)
deletefiles(targetdir,false);
}///
/// 刪除指定目錄的所有檔案和子目錄
///
/// 操作目錄
/// 如果為true,包含對子目錄的操作
public static void deletefiles(string targetdir,bool delsubdir)
if(delsubdir)}}
///
/// 建立指定目錄
///
///
public static void createdirectory(string targetdir)
///
/// 建立子目錄
///
/// 目錄路徑
/// 子目錄名稱
public static void createdirectory(string parentdir,string subdirname)
///
/// 刪除指定目錄
///
/// 目錄路徑
public static void deletedirectory(string targetdir)
}///
/// 刪除指定目錄的所有子目錄,不包括對當前目錄檔案的刪除
///
/// 目錄路徑
public static void deletesubdirectory(string targetdir)
}///
/// 將指定目錄下的子目錄和檔案生成xml文件
///
/// 根目錄
/// 返回xmldocument物件
/// 子目錄
/// 父目錄xmldocument
/// xmldocument物件
編寫乙個檔案目錄常用操作的類
編寫乙個檔案目錄常用操作的類 鄭佐2005 3 8 今天對自己以前寫的一些常用的元件整理了一下,發現對檔案目錄的操作的乙個類還用的比較多,於是對他進行了修改,一些方法是為在社群中看到有提問增加的,包括複製目錄的檔案和子目錄,移動目錄檔案和子目錄,生成 xml樹形檔案等。using system us...
編寫乙個檔案目錄常用操作的類
今天對自己以前寫的一些常用的元件整理了一下,發現對檔案目錄的操作的乙個類還用的比較多,於是對他進行了修改,一些方法是為在社群中看到有提問增加的,包括複製目錄的檔案和子目錄,移動目錄檔案和子目錄,生成xml樹形檔案等。using system using system.io using system....
編寫乙個檔案目錄常用操作的類
今天對自己以前寫的一些常用的元件整理了一下,發現對檔案目錄的操作的乙個類還用的比較多,於是對他進行了修改,一些方法是為在社群中看到有提問增加的,包括複製目錄的檔案和子目錄,移動目錄檔案和子目錄,生成xml樹形檔案等。using system using system.io using system....