在开发编译工具中,需要用到文件的相关操作,于是就封装了相关的函数实现:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110 |
//判断文件是否存在BOOL
FileIsExist(CString strFileName){ CFileFind finder; BOOL
bWorking = finder.FindFile(strFileName); while(bWorking) { return
TRUE; } return
FALSE;}//获取ini文件信息CString GetIniString(CString strAppName, CString strKeyName, CString strDefault, CString strFileName){ CString strRet; const
int nMaxLength = 1024; GetPrivateProfileString(strAppName, strKeyName, strDefault,strRet.GetBuffer(nMaxLength), nMaxLength,strFileName); strRet.ReleaseBuffer(); return
strRet;}// 得到文件的后缀名CString GetFileExtension(CString fileName){ CString strFileNameExt = TEXT(""); int
nPosExt = fileName.ReverseFind(TEXT(‘.‘)); strFileNameExt = fileName.Right(fileName.GetLength() - nPosExt - 1); return
strFileNameExt;}//获取运行路径CString GetRunPath(){ TCHAR
cbFilename[MAX_PATH + 1]={‘\0‘}; GetModuleFileName(NULL, cbFilename, MAX_PATH); CString strPath=cbFilename; strPath=strPath.Left(strPath.ReverseFind(‘\\‘)); return
strPath;}// 根据一个路径创建目录void
CreatePath(CString strPath){ CString dirName; CString strSub; CString strDrive; int
nPos = 0; nPos = strPath.Find(TEXT(":")); dirName = strPath.Right(strPath.GetLength() - nPos -1); strDrive = strPath.Left(nPos + 1); int
ia = 1; while
(1) { AfxExtractSubString(strSub, dirName, ia, TEXT(‘\\‘)); if
(TEXT("") == strSub) { break; } ia++; strDrive += TEXT("\\") + strSub; if
(!PathFileExists(strDrive)) { CreateDirectory(strDrive, NULL); } }}// 删除一个目录下的所有文件bool
DeleteDirFiles(CString strDir){ // CreateDirectory(strDir, NULL); CreatePath(strDir); CFileFind finder; CString strFindDir; strFindDir.Format(TEXT("%s\\*.*"), strDir); // MessageBox(strFindDir); BOOL
bWorking = finder.FindFile(strFindDir); while(bWorking) { bWorking = finder.FindNextFile(); if
(!finder.IsDirectory()) { DeleteFile(finder.GetFilePath()); } } finder.Close(); return
false;}//根据路径获取文件名CString GetFileNameFromPath(CString strPath){ CString strDirName = TEXT(""); int
nPos = strPath.ReverseFind(TEXT(‘\\‘)); if
(-1 != nPos) { strDirName = strPath.Right(strPath.GetLength() - nPos -1); } return
strDirName;} |
原文:http://www.cnblogs.com/JczmDeveloper/p/3559037.html