首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> 關於C++

C++ Builder 文件操作函數大全

     編輯:關於C++

BCB 內建文件操作函數分類詳解

BCB 提供三類文件操作函數,支援 AnsiString 使用方便:

一、文件名函數 (路徑、副檔名、目錄、磁碟機解析)

函數功能範例結果
ExpandFileName完整路徑C:\MyBCB\Sample1.EXE
ExtractFileExt副檔名.exe
ExtractFileName純檔名SOL.EXE
ExtractFilePath路徑含反斜線Winnt\
ExtractFileDir目錄名 (無反斜線)Winnt
ExtractFileDrive磁碟機c:
ChangeFileExt變更副檔名 (字串操作)c:\winnt\SOL.OOO
ExpandUNCFileName網路完整路徑\\NT40\WINNT\SOL.EXE
ExtractRelativePath相對路徑..\asm\dz.asm
ExtractShortPathName8.3 短檔名E:\Progra~1\dualwh~1\4dmain.exe
MatchesMask萬用字元比對true/false

二、文件管理函數 (目錄建立/刪除、磁碟空間、檔案屬性/日期、當前目錄)

函數功能備註
CreateDir建立目錄成功回傳 true
DeleteFile刪除檔案成功回傳 true
DirectoryExists目錄是否存在回傳 bool
DiskFree剩餘空間 (Bytes)參數 0=當前, 1=A, 2=B... 無效回傳 -1
DiskSize總容量 (Bytes)同上
FileExists檔案是否存在回傳 bool
FileGetAttr取得屬性位元組合: faReadOnly=1, faHidden=2, faSysFile=4, faDirectory=16, faArchive=32
FileGetDate建立時間 (秒數 from 1970)需 FileOpen 取得 Handle
GetCurrentDir取得當前目錄
RemoveDir刪除目錄成功回傳 true
SetCurrentDir設定當前目錄成功回傳 true

三、文件 I/O 函數 (底層讀寫、定位、建立)

函數功能參數/回傳
FileOpen開啟檔案Mode: fmOpenRead=0, fmOpenWrite=1, fmOpenReadWrite=2; Share: fmShareExclusive=16, fmShareDenyWrite=32, fmShareDenyRead=48, fmShareDenyNone=64; 成功回傳 Handle, 失敗 -1
FileClose關閉 Handle
FileRead讀取資料回傳實際讀取位元組數
FileSeek移動指標Origin: 0=檔頭, 1=目前, 2=檔尾; 回傳新位置
FileWrite寫入資料回傳實際寫入位元組數
FileCreate建立檔案成功回傳 Handle

使用範例

// 讀取檔案前 400 位元組
int h = FileOpen("C:\\autoexec.bat", fmOpenRead | fmShareDenyNone);
char buf[400];
FileRead(h, buf, 400);
FileClose(h);

// 取得檔案長度
int len = FileSeek(h, 0, 2); // 移至檔尾位置即為長度

優點

  • 原生支援 AnsiString,無需字串轉換。
  • 封裝 Win32 API,錯誤處理一致 (失敗回傳 -1/false)。
  • 適合 BCB 專案內部使用,跨平台潛力 (Kylix 相容)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved