文件系統API函數

文件系統的基本概念:
包括磁盤分區,卷,目錄,文件對象,文件句柄,文件映射
1.磁盤分區:
物理磁盤,邏輯磁盤
2.卷:
也稱邏輯驅動器,是NTFS,FAT32等文件系統組織結構的最高層.
卷是存儲設備(硬盤)上由文件系統管理的一塊區域,在邏輯上相互隔離的存儲單元.

windows命名規則:
主文件名+擴展名
windows中文件系統的長度被限制爲260個字符.
這260個字符包括卷標,路徑,主文件名和擴展名,分隔符

在DOS下的保留設備名不能做文件名或主文件名.如CON,PRN,AUX,NUL,COM1.....

磁盤和驅動器管理API
GetLogicalDrivers       獲取主機中所有的邏輯驅動器,以Bit Map的形式返回.
GetLogicalDriverString    獲取主機中所有的邏輯驅動器,以驅動器根路徑字符串返回.
FindFirstVolume     查找主機中的第一個驅動器,返回查找句柄.
FindNextVolume      根據FindFirstVolume返回句柄,查找主機中後繼的邏輯驅動器
FindVolumeClose     關閉驅動器查找句柄
GetDriveType      獲取驅動器類型
GetVolumeInformation    獲取邏輯驅動器信息
FindFirstVolumeMountPoint 查找指定卷的第一個掛載點,返回查找句柄
FindNextVolumeMountPoint 根據FindFirstVolumeMountPoint返回的句柄,查找卷的後繼掛載點.
FindVolumeMountPointClose 關閉掛載點查找句柄
GetVolumeNameForVolumeMountPoint 根據指定掛載點獲取相應的卷設備名
SetVolumeMountPoint         將指定卷掛載到指定掛載點處
GetDiskFreeSpace            獲取磁盤空間信息,包括每簇的扇區數,每扇區的字節數,簇數量,空閒的簇數量
GetDiskFreeSpaceEx          獲取用戶可用的空閒空間的字節數,磁盤總容量的字節數

文件和目錄管理API
DeleteFile                  刪除參數所指定文件
CopyFile                    複製指定文件爲一個新文件
MoveFile                    將指定文件或目錄移動到指定位置
CreateFile                  新建或打開一個文件,獲取文件句柄
ReadFile                    讀取由文件句柄指定文件的內容
WriteFile                   向由文件句柄指定的文件中寫入內容
GetFileSize                 獲取文件大小,返回DWORD中;大小超出DWORD最大值時可指定高32位的DWORD聯合存儲
GetFileSizeEx               獲取文件大小,存儲到一個64位的大整數聯合體中.
CreateDirectory             創建一個目錄
GetCurrentDirectory         獲取當前程序所在目錄
SetCurrentDirectory         設置當前程序所在目錄
GetModuleFileName           獲取當前模塊全路徑
FindFirstFile               查找指定目錄下第一個文件句柄或目錄,獲得查找句柄
FindNextFile                根據FindFirstFile獲得的句柄,循環查找文件或目錄
GetFileAttributes           獲取指定文件目錄屬性,返回一個DWORD值
GetFileAttributesEx         獲取文件或目錄屬性,存儲在WIN32_FILE_ATTRIBUTE_DATA結構體中
SetFileAttributes           將文件屬性設定爲指定值
FileTimeToLocalFileTime     將文件時間轉換爲本地時間
FileTimeToSystemTime        將文件轉換爲系統時間,SYSTEMTIME格式便於顯示

高級文件操作
CreateFileMapping           創建文件的映射對象
MapViewOfFile               創建視圖,將創建的文件映射對象映射到當前進程的地址空間中
FlushViewOfFile             將視圖中的數據都寫入磁盤,對視圖的操作都會反映到磁盤上的文件中
OpenFileMapping             打開已經存在的命名的文件映射對象
UnmapViewOfFile             取消文件映射
GetMappedFileName           從映射對象獲取被映射文件的文件設備名
QueryDosDevice              獲取MS-DOS設備名

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章