Path類與Directory類與File類對路徑/目錄/文件的操作實例
2024-07-10 12:46:22
供稿:網友
Path 對路徑 字符串進行操作
獲得后綴
能合并路徑
獲取文件名
Directory和DirectoryInfo 對目錄進行操作
判斷目錄是否存在
創建目錄
刪除目錄
獲取目錄下所有的子目錄
獲取目錄下所有的子文件
File和FileInfo 對文件進行操作
讀文件
寫文件
追加文件
判斷文件是否存在
創建文件
刪除文件
1、Path類
代碼如下:
using System;
using System.IO;//目錄和文件操作的名稱空間
namespace _11_Path類 {
class Program {
static void Main(string[] args) {
string path = "c://abc//1.txt" ;
//注意這里是對路徑字符串的操作 而不是真正的文件 “修改”支持字符串層面的,沒有真的給文件改名
path = Path.ChangeExtension(path, "avi" );//ChangeExtension()修改文件后綴名1.avi c://abc//1.avi
//將兩個路徑合成一個路徑,比用+好,可以方便解決是不是加斜線的問題,自動處理路徑分隔符的問題
path = Path.Combine("c://abc//def//" , "1.jpg"); //c:/abc/def/1.jpg
//得到文件所在文件夾的位置 同樣是從字符串的角度去處理
path = Path.GetDirectoryName(path);//c:/abc
path = Path.GetExtension(path);//擴展名 .txt
path = Path.GetFileName(path);//文件名.后綴名 1.txt
path = Path.GetFileNameWithoutExtension(path);//不含后綴的文件名 1
path = Path.GetFullPath("11-Path類.exe" );//文件全路徑(相對文件的全路徑 一般也不用此方法) F:/PIZIYIMAO/11-Path類/bin/Debug/11-Path類.exe
path = Path.GetTempFileName();//臨時文件夾保存路徑 自動創建文件 C:/Documents and Settings/PIZIYIMAO/Local Settings/Temp/tmp5E.tmp
path = Path.GetTempPath();//獲取臨時文件夾保存路徑 C:/Documents and Settings/PIZIYIMAO/Local Settings/Temp/
Console.WriteLine(path);
Console.Read();
}
}
}
2、操作目錄類 Directory與DirectoryInfo
代碼如下:
using System;
using System.IO;
namespace _12_Directory {
class Program {
static void Main( string[] args) {
DirectoryInfo dic = new DirectoryInfo( "c://abc" );
//dic.Name; //獲取文件名
//dic.FullName; //獲取文件全路徑 功能要比Directory強大 區別在于它是實例類 而后者是靜態類
Directory .CreateDirectory("c://abc" ); //創建文件夾
Directory .CreateDirectory("c://abc//1//2//3//4//5//6//7" ); //連續創建多級文件夾
if (Directory .Exists( "c://abc")) //判斷是否存在文件夾
{
Directory .Delete("c://abc" ); //如果存在則刪除 如果文件夾為空能正常刪除 不為空則會報錯 "目錄不是空的"
Directory .Delete("c://abc" , true); //true則指定 如果文件夾不為空 同樣執行刪除操作
}
string [] paths = Directory .GetDirectories( "c://abc"); //獲取目錄中所有子目錄名稱 注意只取下一級別 即c:/abc/1 如獲取windows文件夾下所有文件夾路徑可以使用此方法