Scenario Description:
You need to get the file information for the specified path and then manipulate the file
First, obtain the file information, form a DataTable information.
/// <summary> ///gets the file information in the specified directory/// </summary> /// <param name= "path" >Absolute Path</param> /// <returns></returns> PublicDataTable GetInfo (stringpath) { stringFileName ="", FileType ="", capacity ="", EditTime ="", dir ="", File =""; DataTable DT=NewDataTable (); Dt. Columns.Add ("FileName"); Dt. Columns.Add ("FileType"); Dt. Columns.Add ("capacity"); Dt. Columns.Add ("EditTime"); Dt. Columns.Add ("dir"); Dt. Columns.Add ("file"); DirectoryInfo di=NewDirectoryInfo (path); foreach(FileSystemInfo FSIinchdi. Getfilesysteminfos ()) {DataRow Nrow=dt. NewRow (); if(FSI isFileInfo)//if the file{FileInfo fi=(FileInfo) FSI; FileName= fi. Name;//Get file nameFile = fi. FullName;//get the full catalog if(FI. Extension.length <1)//if the extension is less than one{FileType=""; } Else{FileType= fi. Extension.remove (0,1);//get file name extension} dir=fi. Directory.tostring (); Capacity= Pub. Filecountsize (Convert.ToInt32 (FI. Length.tostring ()));//Calculate File SizeEditTime = fi. Lastwritetime.tostring ();//gets the last modified time } Else //if it is a folder{di=(DirectoryInfo) FSI; FileName=di. Name; Dir=di. FullName; File=""; FileType="folder"; Capacity=""; EditTime=di. Lastwritetime.tostring (); } nrow["FileName"] =FileName; nrow["FileType"] =FileType; nrow["capacity"] =capacity; nrow["EditTime"] =EditTime; nrow["dir"] =dir; nrow["file"] =file; Dt. Rows.Add (Nrow); } dt. Defaultview.sort="edittime desc"; returnDT; }
Second, call the GetInfo method, display the file information, the result is as follows
C # get file basic information