在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
文件夹创建文件夹//如果文件夹路径不存在则创建文件夹 if (!Directory.Exists(path)) Directory.CreateDirectory(path); 递归创建文件夹public void createdir(string fullpath) { if (!File.Exists(fullpath)) { string dirpath = fullpath.Substring(0, fullpath.LastIndexOf('\\')); //string[] pathes = dirpath.Split('\\'); string[] pathes = fullpath.Split('\\'); if (pathes.Length > 1) { string path = pathes[0]; for (int i = 1; i < pathes.Length; i++) { path += "\\" + pathes[i]; //如果文件夹路径不存在则创建文件夹 if (!Directory.Exists(path)) Directory.CreateDirectory(path); } } } } 删除整个文件夹Directory.Delete(path, true)
获取目录下的文件(夹)var list = new string []{ }; string path = @"D:\公司SVN"; //获取路径下所有文件 list = Directory.GetFiles(path); //获取路径下所有文件夹 list = Directory.GetDirectories(path); //获取路径下所有文件+文件夹 list = Directory.GetFileSystemEntries(path); //获取路径下所有文件(包含子集文件) list = Directory.GetFiles(path, "*.*", SearchOption.AllDirectories); //获取路径下所有文件夹(包含子集文件夹) list = Directory.GetDirectories(path, "*.*", SearchOption.AllDirectories); //获取路径下所有文件+文件夹(包含子集文件+子集文件夹) list = Directory.GetFileSystemEntries(path, "*.*", SearchOption.AllDirectories); 文件夹拷贝private static void DirectoryCopy(string sourceDirName, string destDirName) { DirectoryInfo dir = new DirectoryInfo(sourceDirName); DirectoryInfo[] dirs = dir.GetDirectories(); if (!Directory.Exists(destDirName)) Directory.CreateDirectory(destDirName); foreach (FileInfo file in dir.GetFiles()) file.CopyTo(Path.Combine(destDirName, file.Name), true); foreach (DirectoryInfo subdir in dirs) DirectoryCopy(subdir.FullName, Path.Combine(destDirName, subdir.Name)); }
或者使用Neget安装 Microsoft.VisualBasic 包 Install-Package Microsoft.VisualBasic string sourcePath = @"D:\test"; string targetPath = @"D:\test_new"; //true:目录中具有相同的文件则覆盖 Microsoft.VisualBasic.FileIO.FileSystem.CopyDirectory(sourcePath, targetPath,true);
文件
获取文件全路径、目录、扩展名、文件名称class Program { static void Main(string[] args) { //获取当前运行程序的目录 string fileDir = Environment.CurrentDirectory; Console.WriteLine("当前程序目录:"+fileDir); //一个文件目录 string filePath = "C:\\JiYF\\BenXH\\BenXHCMS.xml"; Console.WriteLine("该文件的目录:"+filePath); string str = "获取文件的全路径:" + Path.GetFullPath(filePath); //-->C:\JiYF\BenXH\BenXHCMS.xml Console.WriteLine(str); str = "获取文件所在的目录:" + Path.GetDirectoryName(filePath); //-->C:\JiYF\BenXH Console.WriteLine(str); str = "获取文件的名称含有后缀:" + Path.GetFileName(filePath); //-->BenXHCMS.xml Console.WriteLine(str); str = "获取文件的名称没有后缀:" + Path.GetFileNameWithoutExtension(filePath); //-->BenXHCMS Console.WriteLine(str); str = "获取路径的后缀扩展名称:" + Path.GetExtension(filePath); //-->.xml Console.WriteLine(str); str = "获取路径的根目录:" + Path.GetPathRoot(filePath); //-->C:\ Console.WriteLine(str); Console.ReadKey(); } }
创建文件//path是完整路径,要包含文件的后缀名 string path = @"C:\1.txt"; //判断文件是否存在,不存在就创建 if (!File.Exists(path)) { //创建一个 UTF-8 编码text文件 File.CreateText(path); //创建一个文件 //File.Create(path); } 写入文件using System.IO; namespace ConsoleApp2 { class Program { static void Main(string[] args) { //写入文本,不是追加,是清空在写入 string path = @"C:\1.txt"; string[] lines = { "First line", "Second line", "Third line" }; File.WriteAllLines(path, lines); File.WriteAllText(path, "AAAAAAAAAAAAAAAA"); //追加写入文本 using (StreamWriter sw = new StreamWriter(path, true)) { sw.WriteLine("Fourth line"); } using (StreamWriter sw = File.AppendText(path)) { sw.Write(12345); } } } }
文件流读写public Stream FileToStream(string fileFullName) { using (FileStream fs = new FileStream(fileFullName, FileMode.OpenOrCreate)) { byte[] bytes = new byte[fs.Length]; fs.Read(bytes, 0, bytes.Length); fs.Close(); return new MemoryStream(bytes); } } public void WriteFile(string fileFullName, byte[] bytes) { if (bytes == null) return; using (FileStream fs = new FileStream(fileFullName, FileMode.OpenOrCreate)) { fs.Write(bytes, 0, bytes.Length); fs.Close(); } #region 第二种 /* using (MemoryStream m = new MemoryStream(bytes)) using (FileStream fs = new FileStream(fileFullName, FileMode.OpenOrCreate)) { m.WriteTo(fs); } */ #endregion }
Stream 和 byte[] 互转/// <summary> /// 将 Stream 转成 byte[] /// </summary> /// <param name="bytes"></param> /// <returns></returns> public byte[] StreamToBytes(Stream stream) { byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); stream.Seek(0, SeekOrigin.Begin); stream.Flush(); stream.Close(); return bytes; } /// <summary> /// 将 byte[] 转成 Stream /// </summary> /// <param name="bytes"></param> /// <returns></returns> public Stream BytesToStream(byte[] bytes) { return new MemoryStream(bytes); }
x
English
TRANSLATE with
COPY THE URL BELOW
Back
Bing Webmaster Portal
Back
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论