参考链接 点击打开链接
public class DocumentTool
{
//检测文件目录是否存在
public static bool IsExistDirectory (string directoryPath)
{
return Directory.Exists (directoryPath);
}
//检测文件是否存在
public static bool IsExistFile (string filePath)
{
return File.Exists (filePath);
}
//检测指定目录是否为空
public static bool IsEmptyDirectory (string directoryPath)
{
try {
string[] fileNames = Directory.GetFiles (directoryPath);
if (fileNames.Length > 0) {
return false;
}
string[] directoryNames = Directory.GetDirectories (directoryPath);
return directoryNames.Length <= 0;
} catch {
return false;
}
}
//检测目录中是否存在指定文件夹
public static bool Contains (string directoryPath, string searchPattern)
{
try {
string[] fileNames = Directory.GetFiles (directoryPath, searchPattern);
return fileNames.Length != 0;
} catch {
return false;
}
}
//创建一个目录
public static void CreatDirectory (string directoryPath)
{
if (!IsExistDirectory (directoryPath)) {
Directory.CreateDirectory (directoryPath);
}
}
//创建一个文件
public static bool CreateFile (string filePath)
{
try {
if (!IsExistFile (filePath)) {
FileInfo info = new FileInfo (filePath);
FileStream fs = info.Create ();
fs.Close ();
}
} catch {
return false;
}
return true;
}
//创建一个文件 写入二进制流
public static bool CreatFile (string filePath, byte[] buffer)
{
try {
if (!IsExistFile (filePath)) {
FileInfo file = new FileInfo (filePath);
FileStream fs = file.Create ();
fs.Write (buffer, 0, buffer.Length);
fs.Close ();
}
} catch {
return false;
}
return true;
}
//向文本文件写入内容
public static void WriteText (string filePath, string content)
{
File.AppendAllText (filePath, content);
}
//将现有文件复制到新的文件中
public static void Copy (string sourceFilePath, string destFilePath)
{
if (IsExistFile (destFilePath)) {
DeleteFile (destFilePath);
}
File.Copy (sourceFilePath, destFilePath);
}
//将文件移动到指定目录下
public static void Move (string sourceFilePath, string destFilePath)
{
//获取文件名称
if (IsExistFile (destFilePath)) {
DeleteFile (destFilePath);
}
File.Move (sourceFilePath, destFilePath);
}
public static void MovePNG(string sourceFilePath, string destFilePath){
DirectoryInfo info = new DirectoryInfo (sourceFilePath);
FileInfo[] files = info.GetFiles ();
foreach(FileInfo file in files){
if (file.Extension == ".png") {
file.MoveTo (Path.Combine (destFilePath, file.Name));
}
}
}
//清空文件内容
public static void ClearFile (string filePath)
{
File.Delete (filePath);
CreateFile (filePath);
}
//删除指定文件
public static void DeleteFile (string filePath)
{
if (IsExistFile (filePath)) {
File.Delete (filePath);
}
}
//删除指定目录及其所有文件
public static void DeleteDirectory (string directoryPath)
{
if (IsExistDirectory (directoryPath)) {
Directory.Delete (directoryPath);
}
}
}