bool Uakietool_movieBPLibrary::akietool_movieSampleFunction(FString source, FString target) { LPCWSTR lpFolderSrc = TCHAR_TO_WCHAR(*source); LPCWSTR lpFolderDest = TCHAR_TO_WCHAR(target); TCHAR szSrc[MAX_PATH], szDest[MAX_PATH]; WIN32_FIND_DATA FindFileData; // 创建目标文件夹,并复制源文件夹的内容 CreateDirectory(lpFolderDest, NULL); wsprintf(szSrc, TEXT("%s\"), lpFolderSrc); HANDLE hFind = FindFirstFile(szSrc, &FindFileData); if (hFind == INVALID_HANDLE_VALUE) { return false; } do { if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { if (_tcscmp(FindFileData.cFileName, TEXT(".")) != 0 && _tcscmp(FindFileData.cFileName, TEXT("..")) != 0) { wsprintf(szSrc, TEXT("%s\%s"), lpFolderSrc, FindFileData.cFileName); wsprintf(szDest, TEXT("%s\%s"), lpFolderDest, FindFileData.cFileName); akietool_movieSampleFunction(szSrc, szDest); } } else { wsprintf(szSrc, TEXT("%s\%s"), lpFolderSrc, FindFileData.cFileName); wsprintf(szDest, TEXT("%s\%s"), lpFolderDest, FindFileData.cFileName); CopyFile(szSrc, szDest, FALSE); } } while (FindNextFile(hFind, &FindFileData)); FindClose(hFind); return true; } 怎么获得source 文件夹的名字
时间: 2024-03-11 17:50:47 浏览: 107
可以使用字符串操作函数 `PathFindFileName()` 来获取路径中的文件名或文件夹名。
具体来说,在你的代码中可以这样调用 `PathFindFileName()`:
```c++
#include <Shlwapi.h> // 需要包含 Shlwapi.h 头文件
// ...
LPCWSTR lpFolderSrc = TCHAR_TO_WCHAR(*source);
TCHAR szSrc[MAX_PATH];
PathCanonicalize(szSrc, lpFolderSrc);
LPCWSTR lpFolderName = PathFindFileName(szSrc);
FString folderName = FString(lpFolderName);
```
上述代码中,`PathCanonicalize()` 函数可以将路径中的相对路径和绝对路径转换为标准格式,避免出现意外的错误。然后,使用 `PathFindFileName()` 函数可以获取路径中的文件名或文件夹名,将其转换为 `FString` 类型即可。
阅读全文