文件夾
1.存在:
?if(Directory.Exists(dirPath)
{
}
2.獲取文件夾內文件信息:
? ? ? ? ? ? ? ? DirectoryInfo di = new DirectoryInfo(dirPath);
? ? ? ? ? ? ? ? foreach (FileInfo fi in di.GetFiles())
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? len1 = fi.Length;
fi.FullName;
......
? ? ? ? ? ? ? ? }
3.獲取文件夾內,文件夾信息
?DirectoryInfo[] dis = di.GetDirectories();
4.創建文件夾
?Directory.CreateDirectory(desdir);
文件
1.存在:
?if(File.Exists(filePath)
{
}
====================================================================================================================
?1. DirectoryInfo.GetFiles():獲取目錄中(不包含子目錄)的文件,返回類型為FileInfo[],支持通配符查找;
??? 2. DirectoryInfo.GetDirectories():獲取目錄(不包含子目錄)的子目錄,返回類型為DirectoryInfo[],支持通配符查找;
??? 3. DirectoryInfo. GetFileSystemInfos():獲取指定目錄下(不包含子目錄)的文件和子目錄,返回類型為FileSystemInfo[],支持通配符查找;
如何獲取指定文件的基本信息;
??? FileInfo.Exists:獲取指定文件是否存在;
??? FileInfo.Name,FileInfo.Extensioin:獲取文件的名稱和擴展名;
??? FileInfo.FullName:獲取文件的全限定名稱(完整路徑);
??? FileInfo.Directory:獲取文件所在目錄,返回類型為DirectoryInfo;
??? FileInfo.DirectoryName:獲取文件所在目錄的路徑(完整路徑);
??? FileInfo.Length:獲取文件的大小(字節數);
??? FileInfo.IsReadOnly:獲取文件是否只讀;
??? FileInfo.Attributes:獲取或設置指定文件的屬性,返回類型為FileAttributes枚舉,可以是多個值的組合
??? FileInfo.CreationTime、FileInfo.LastAccessTime、FileInfo.LastWriteTime:分別用于獲取文件的創建時間、訪問時間、修改時間;
文件名字符串操作
1.獲取文件名
nameList[i].Substring(nameList[i].LastIndexOf("\\")+1);
2.獲取文件路徑
nameList[i].Substring(0,nameList[i].LastIndexOf("\\"));
保存到txt
? ? ??private void SaveTextBox(string filename)
? ? ? ? {
? ? ? ? ? ? if(!Directory.Exists(@".\save"))
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Directory.CreateDirectory(@".\save");
? ? ? ? ? ? }? ? ? ? ??
? ? ? ? ? ? string strfile = @".\save\" + filename+".txt";
? ? ? ? ? ?// FileStream fileStream = new FileStream(strfile, FileMode.OpenOrCreate);? ? //新建文件流
? ? FileStream fileStream = new FileStream(strfile, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite); ?//讀寫打開,不會阻塞;
? ? ? ? ? ? StreamWriter streamWriter = new StreamWriter(fileStream, Encoding.Default); ? //寫流
? ? ? ? ? ? string textfile = textBox1.Text;
? ? ? ? ? ? string[] textline = textfile.Split( '\n'); ? //分行
? ? ? ? ? ? for (int i = 0; i < textline.Length; i++) ? ?//分行寫入
? ? ? ? ? ? {
? ? ? ? ? ? ? ? streamWriter.Write(textline[i] + "\r\n");
? ? ? ? ? ? }
? ? ? ? ? ? streamWriter.Flush();
? ? ? ? ? ? streamWriter.Close();
? ? ? ? ? ? fileStream.Close();
? ? ? ? ? ?
? ? ? ? }
? ? ? ? private bool CopyFile(string filepath, string desdir)
? ? ? ? {
? ? ? ? ? ? string srcfileName = filepath.Substring(filepath.LastIndexOf("\\") + 1);
? ? ? ? ? ? srcfileName = desdir + "\\" + srcfileName; ? ?//目標文件
? ? ? ? ? ? if (!Directory.Exists(desdir)) ? ? ? ? ? //判定目標目錄存在
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Directory.CreateDirectory(desdir);
? ? ? ? ? ? }
? ? ? ? ? ? try
? ? ? ? ? ? {
? ? ? ? ? ? ? ? File.Copy(filepath, srcfileName, true); //over write
? ? ? ? ? ? ? ? return true;
? ? ? ? ? ? }
? ? ? ? ? ? catch (Exception ex)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? //AddTextBox("copy file error:" + ex.Message);
? ? ? ? ? ? ? ? return false;
? ? ? ? ? ? }
? ? ? ? }
文件名字符串操作
1.獲取文件名
nameList[i].Substring(nameList[i].LastIndexOf("\\")+1);
2.獲取文件路徑
nameList[i].Substring(0,nameList[i].LastIndexOf("\\"));
參考鏈接:
http://blog.csdn.net/donthan/article/details/17310975