Windows 檔案 目錄操作程式設計常用API

2021-06-18 19:32:08 字數 2268 閱讀 9467

1、檔案操作函式:

createfile //建立或開啟檔案;

writefile //寫資料到檔案;

readfile //從檔案讀資料;

copyfile //拷貝檔案;

movefile //移動或重新命名檔案;

deletefile //刪除檔案;

getmodulefilename //獲取檔案目錄;

setfilepointer //檔案指標位置設定;

closehandle //關閉檔案控制代碼;

2、檔案屬性函式:

getfilesize //獲取檔案大小;

getfiletime //獲取檔案的時間資訊;

setfiletime //設定檔案的時間資訊;

getfileattribute*** //獲取檔案屬性,如建立時間、修改時間等等;

setfileattributes //設定檔案的屬性;設定檔案的唯讀屬性等等;

3、檔案的遍歷與查詢:

findfirstfile //查詢第乙個檔案;

findnextfile //查詢下乙個檔案;

findclose //查詢結束;

4、目錄操作函式:

createdirectory //建立(一層的)目錄;

removedirectory //刪除乙個空目錄;

5、獲取指定的目錄:

gettemppath //獲取臨時目錄;

getcurrentdirectory //獲取當前目錄;

setcurrentdirectory //設定當前目錄;

getsystemdirectory //獲取系統目錄;

getwindowsdirectory //獲取windows目錄;

使用api 函式shgetspecialfolderlocation,shlobj.h裡有shgetspecialfolderlocation的原型宣告。這個函式可以幫我們找到windows的桌面目錄、啟動目錄、我的文件目錄等等。 

shgetspecialfolder 需要三個引數:

第乙個引數是hwnd,它指定了 「所有者視窗」 ;在呼叫這個函式時可能出現的對話方塊或訊息框;

第二個引數是乙個整數 id,決定哪個目錄是待查詢目錄,它的取值可能是:

csidl_bitbucket **站

csidl_controls 控制面板

csidl_desktop windows桌面desktop

csidl_desktopdirectory desktop的目錄

csidl_drives 我的電腦

csidl_fonts 字型目錄

csidl_nethood 網路上的芳鄰

csidl_network 網路上的芳鄰虛擬目錄

csidl_personal 我的文件

csidl_printers 印表機

csidl_programs 程式組

csidl_recent 最近開啟的文件

csidl_sendto 「傳送到」 選單項

csidl_startmenu 任務條啟動選單項

csidl_startup 啟動目錄

csidl_templates 文件模板

tchar szpath[max_path] = ;

shgetspecialfolderpath(null, szpath, csidl_desktop, false);

#include "stdio.h"

#include "string.h"

#include "stdlib.h"

#include "windows.h"

void main()

; int err;

char szfile[max_path];

handle hfindfile;

win32_find_data finddata;

err=getcurrentdirectory(sizeof(szpath),szpath);

if (err==null)

strcpy(szfile,szpath);

// strcat(szfile,"\\*.c");

strcat(szfile,"\\*");

hfindfile=findfirstfile(szfile,&finddata);

if (hfindfile==invalid_handle_value)

while(1)

findclose(hfindfile);

}

《unix高階環境程式設計》檔案和目錄 目錄操作

目錄的基本操作包括開啟目錄opendir 讀取目錄readdir 關閉目錄closedir等操作,如下說明 cpp view plain copy 目錄操作 1 開啟目錄opendir 函式功能 開啟乙個目錄 返回值 若成功返回乙個目錄指標,若出錯則返回null指標 函式原型 include inc...

目錄檔案操作

一 在不使用mfc的程式中獲得某個目錄下的所有檔名稱,包括子目錄。把檔名稱以乙個固定的程度放入乙個緩衝中,這個緩衝要足夠的大,能容下所有的檔名稱。函式的輸入為要查詢的根目錄,輸出為存放所有檔名稱的緩衝 演算法 使用遞迴 二 void findfileindir char rootdir,char s...

目錄檔案操作

include include dir opendir 目錄名字 成功時,返回乙個指向目錄檔案的指標,失敗時,返回null 同上 struct dirent readdir dir dir 成功時,返回乙個dirent結構體型別的指標,如果讀到末尾或失敗,返回null。int closedir di...