//------------------------------------------------------------ // Game Framework // Copyright © 2013-2020 Jiang Yin. All rights reserved. // Homepage: https://gameframework.cn/ // Feedback: mailto:ellan@gameframework.cn //------------------------------------------------------------ using MongoDB.Bson.Serialization.Serializers; using System.IO; namespace ET { /// /// 实用函数集。 /// public static partial class Utility { public static class FileOpation { public static void WriteBytes(string path,byte[] buffer) { using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write)) { fs.Write(buffer, 0, buffer.Length); } } public static void WriteString(string path, string str) { using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write)) { using(StreamWriter sw =new StreamWriter(fs)) { sw.Write(str); } } } public static void Create(string path) { if (File.Exists(path)) { return; } File.Create(path); } public static void Delete(string path) { if (File.Exists(path)) { File.Delete(path); } } public static DirectoryInfo CreateDirectory(string path) { if (Directory.Exists(path)) { return new DirectoryInfo(path); } return Directory.CreateDirectory(path); } public static void DeleteDirectory(string path,bool recursive=false) { if (Directory.Exists(path)) { Directory.Delete(path,recursive); } } public static void ClearDirectory(string path) { foreach (FileInfo info in GetFiles(path,"*.*", SearchOption.AllDirectories)) { Delete(info.FullName); } } public static FileInfo[] GetFiles(string path,string searchPattern,SearchOption searchOption) { if (string.IsNullOrEmpty(path) || !Directory.Exists(path)) { Log.Error($"path 文件夹不存在"); return null; } DirectoryInfo info = new DirectoryInfo(path); return info.GetFiles(searchPattern,searchOption); } } } }