当前位置:网站首页>C# 文件与文件夹操作
C# 文件与文件夹操作
2022-07-05 23:26:00 【廷益--飞鸟】
文件路径 ==>获取文件名
组合 文件路径
// 获取文件名
string name = System.IO.Path.GetFileName(file);
// 组合文件路径
string dest = System.IO.Path.Combine(destFolder, name);
文件夹是否存在
Directory.Exists(folderPath);
文件是否存在
File.Exists(fileFullName);
文件与文件夹操作
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SettingROI
{
class UtilityFile
{
// 获取 文件夹列表
public static List<string> GetAllDir(string baseDir)
{
DirectoryInfo srcDirInfo = new DirectoryInfo(baseDir);
DirectoryInfo[] srcDirs = srcDirInfo.GetDirectories();
List<string> strSrcDirLst = new List<string>();
foreach (DirectoryInfo item in srcDirs)
{
string fileName = item.FullName;
strSrcDirLst.Add(fileName);
}
return strSrcDirLst;
}
// 获取 文件列表
public static List<string> GetAllFileNames(string path, string pattern = "*")
{
DirectoryInfo folder = new DirectoryInfo(path);
List<string> fileNames = new List<string>();
foreach (FileInfo file in folder.GetFiles(pattern))
{
fileNames.Add(file.Name);
}
return fileNames;
}
// 拷贝文件夹
public static bool CopyFolder(string sourceFolder, string destFolder)
{
try
{
//如果目标路径不存在,则创建目标路径
if (!System.IO.Directory.Exists(destFolder))
{
System.IO.Directory.CreateDirectory(destFolder);
}
//得到原文件根目录下的所有文件
string[] files = System.IO.Directory.GetFiles(sourceFolder);
foreach (string file in files)
{
// 获取文件名
string name = System.IO.Path.GetFileName(file);
// 组合文件路径
string dest = System.IO.Path.Combine(destFolder, name);
System.IO.File.Copy(file, dest);//复制文件
}
//得到原文件根目录下的所有文件夹
string[] folders = System.IO.Directory.GetDirectories(sourceFolder);
foreach (string folder in folders)
{
string name = System.IO.Path.GetFileName(folder);
string dest = System.IO.Path.Combine(destFolder, name);
CopyFolder(folder, dest);//构建目标路径,递归复制文件
}
return true;
}
catch (Exception e)
{
Debug.WriteLine(e.ToString());
return false;
}
}
// 删除文件夹
public static bool DeleteFolder(string deleteFolder)
{
try
{
if (Directory.Exists(deleteFolder))
Directory.Delete(deleteFolder, true);
}
catch (Exception e)
{
Debug.WriteLine(e.ToString());
return false;
}
return true;
}
}
}
边栏推荐
- 代码农民提高生产力
- 14种神笔记方法,只需选择1招,让你的学习和工作效率提高100倍!
- 保研笔记二 软件工程与计算卷二(13-16章)
- 424. The longest repeated character after replacement ●●
- MySQL (1) -- related concepts, SQL classification, and simple operations
- Rasa 3. X learning series -rasa 3.2.1 new release
- Pyqt control part (I)
- Attacking technology Er - Automation
- YML configuration, binding and injection, verification, unit of bean
- The PNG image is normal when LabVIEW is opened, and the full black image is obtained when Photoshop is opened
猜你喜欢
开源crm客户关系统管理系统源码,免费分享
进击的技术er——自动化
Scala concurrent programming (II) akka
Xinyuan & Lichuang EDA training camp - brushless motor drive
Go language introduction detailed tutorial (I): go language in the era
Basic knowledge of database (interview)
Technical specifications and model selection guidelines for TVs tubes and ESD tubes - recommended by jialichuang
98. 验证二叉搜索树 ●●
2: Chapter 1: understanding JVM specification 1: introduction to JVM;
数学公式截图识别神器Mathpix无限使用教程
随机推荐
SpreadJS 15.1 CN 与 SpreadJS 15.1 EN
代码农民提高生产力
(4)UART应用设计及仿真验证2 —— TX模块设计(无状态机)
Déterminer si un arbre binaire est un arbre binaire complet
VS2010 writes DLL and unit test of dynamic link library, and transfers the correctness of DLL test
Object detection based on impulse neural network
4点告诉你实时聊天与聊天机器人组合的优势
Initial experience | purchase and activate typora software
UVA – 11637 Garbage Remembering Exam (组合+可能性)
Spécifications techniques et lignes directrices pour la sélection des tubes TVS et ESD - Recommandation de jialichuang
TVS管和ESD管的技术指标和选型指南-嘉立创推荐
MySQL (1) -- related concepts, SQL classification, and simple operations
Comparison between webgl and webgpu [3] - vertex buffer
Rethinking about MySQL query optimization
Redis高可用——主从复制、哨兵模式、集群
帶外和帶內的區別
Basic knowledge of database (interview)
有什么不起眼却挣钱的副业?
Go language introduction detailed tutorial (I): go language in the era
Debian 10 installation configuration