『壹』 文件或文件夾的復制、移動、刪除、粘貼、撤消操作的快捷鍵是什麼
快捷鍵就是鍵盤操作方式,其中移動至少要兩個文件夾之前切換,你確定用獨立操作能做?
復制:Ctrl+C
刪除:Del
粘貼:Ctrl+V
撤銷:Ctrl+Z
『貳』 如何建立文件夾 怎麼建立文件夾
演示機型:聯想天逸510S
系統版本:Windows10
在電腦上怎麼新建文件夾呢?具體操作如下:
1、在桌面單擊滑鼠右鍵。
2、在彈出的選項框中選擇新建,點擊文件夾選項。
3、輸入文件夾名稱,點擊回車即可建立成功。
總結:電腦新建文件夾的方法是在桌面單擊滑鼠右鍵,點擊新建、文件夾。輸入文件夾名稱,點擊回車即可建立成功。
『叄』 UE 文件夾和文件操作
UE有很多針對多平台的操作,其中文件操作也屬於跨平台有差異的操作,UE4將跨平台文件封裝在FPlatformFileManager::Get().GetPlatformFile()之中
如果沒有耐心看細節,只想搬磚就看這里吧
以我的工程myproject為例
先來個常規四件套
CreateDirectoryTree
FPlatformFileManager::Get().GetPlatformFile().CreateDirectoryTree通過調用InternalCreateDirectoryTree,遞歸的創建所有的目錄,就是說,即使父目錄不存在,也會生成相應的目錄。
CreateDirectory
這個函數在IPlatformFile中沒有實現,是由具體的平檯子類實現的,也就是說這個函數才是真的創建目錄的函數,這個函數在父目錄不存在的時候,會返回false。
通過拷貝增加文件夾CopyDirectoryTree
/**
DeleteDirectoryRecursively
DeleteDirectoryRecursively通過FDirectoryVisitor,使用迭代器訪問文件夾,然後將文件夾中的文件和文件夾全部刪除,這個操作是CreateDirectoryTree的逆操作,不同點在於這個操作同時處理了文件。
這個操作執行之後會自己檢查剛才刪除的文件夾是否還在,如果不在的話,返回成功,否則返回失敗。
DeleteDirectory
對應於CreateDirectory,也沒有實現,是由具體的平檯子類實現的,同樣在刪除失敗之後會報錯。
IterateDirectory
UE4定義了IterateDirectory,這個函數由兩個參數,一個是路徑,一個是對便利到的路徑做操作的Visitor,這個Visitor同樣是只有一個介面,具體實現可以自己寫。通過Visitor 和IterateDirectory的相互調用實現了遞歸操作目錄的目的。
IterateDirectoryRecursively
IterateDirectoryRecursively遍歷文件夾的所有子文件夾,並且通過parallelfor加快了訪問速度,在訪問中對訪問進行寫鎖定,並通過底層機制是否線程安全選擇是否多線程執行,是很不錯的便利文件夾的操作,同時這個訪問也要求重寫訪問到指定目錄之後需要做的操作,這里只需要執行具體操作就可以了。
這個操作也是由平檯子類實現,進行文件存在性檢測,如果不存在就返回false
通過拷貝增加文件CopyFile
拷貝文件到指定路徑,如果拷貝失敗或者目標路徑有同名文件,會返回失敗
DeleteFile
刪除指定的文件,具體實現由平檯子類實現
檢查是否可以修改IsReadOnly
通過IsReadOnly檢查文件是否可以修改,具體實現由平檯子類實現
設置是否可以修改SetReadOnly
通過SetReadOnly設置文件是否可以被修改,具體實現由平檯子類實現
移動文件位置或者修改文件名稱MoveFile
通過MoveFile可以移動文件,如果源路徑和目標路徑的目錄相同,就是修改文件名稱了
讀取文件類容 OpenRead
/** Attempt to open a file for writing. If successful will return a non-nullptr pointer. Close the file by delete'ing the handle. /
virtual IFileHandle OpenWrite(const TCHAR Filename, bool bAppend = false, bool bAllowRead = false) = 0;
/**
* Finds all the files within the given directory, with optional file extension filter
* @param Directory The directory to iterate the contents of
* @param FileExtension If FileExtension is NULL, or an empty string "" then all files are found.
* Otherwise FileExtension can be of the form .EXT or just EXT and only files with that extension will be returned.
* @return FoundFiles All the files that matched the optional FileExtension filter, or all files if none was specified.
/
virtual void FindFiles(TArray<FString>& FoundFiles, const TCHAR Directory, const TCHAR* FileExtension);
/**
* Finds all the files within the directory tree, with optional file extension filter
* @param Directory The starting directory to iterate the contents. This function explores subdirectories
* @param FileExtension If FileExtension is NULL, or an empty string "" then all files are found.
* Otherwise FileExtension can be of the form .EXT or just EXT and only files with that extension will be returned.
* @return FoundFiles All the files that matched the optional FileExtension filter, or all files if none was specified.
/
virtual void FindFilesRecursively(TArray<FString>& FoundFiles, const TCHAR Directory, const TCHAR* FileExtension);