备份
This commit is contained in:
50
demo/ResPackage/FileSystem.h
Normal file
50
demo/ResPackage/FileSystem.h
Normal file
@@ -0,0 +1,50 @@
|
||||
#pragma once
|
||||
#include "EzUI/EzUI.h"
|
||||
#include "EzUI/UIString.h"
|
||||
namespace ezui {
|
||||
struct FileInfo final {
|
||||
UIString Name;
|
||||
DWORD Attr;
|
||||
bool IsDirectory() {
|
||||
return (Attr & FILE_ATTRIBUTE_DIRECTORY);
|
||||
}
|
||||
};
|
||||
namespace File {
|
||||
//判断文件是否存在
|
||||
UI_EXPORT bool Exists(const UIString& filenNme);
|
||||
//拷贝文件
|
||||
UI_EXPORT bool Copy(const UIString& src, const UIString& desc);
|
||||
//删除文件
|
||||
UI_EXPORT bool Delete(const UIString& file);
|
||||
//文件移动或者改名
|
||||
UI_EXPORT bool Move(const UIString& oldName, const UIString& newName);
|
||||
//创建一个文件(如果文件已存在则清空其内容)
|
||||
UI_EXPORT bool Create(const UIString& fileName);
|
||||
//将指定数据以二进制方式写入文件(如果文件存在内容则追加)
|
||||
UI_EXPORT bool Write(const char* fileData, size_t fileSize, const UIString& outFileName);
|
||||
//读取文件到内存中
|
||||
UI_EXPORT size_t Read(const UIString& fileName, std::string* data);
|
||||
}
|
||||
namespace Path {
|
||||
//格式化路径
|
||||
UI_EXPORT void Format(std::string* str);
|
||||
//获取文件名(不包括目录名 不包括扩展名)
|
||||
UI_EXPORT UIString GetFileNameWithoutExtension(const UIString& _filename);
|
||||
//获取文件所在目录
|
||||
UI_EXPORT UIString GetDirectoryName(const UIString& _filename);
|
||||
//获取文件扩展名
|
||||
UI_EXPORT UIString GetExtension(const UIString& _filename);
|
||||
//获取文件名(文件名+扩展名)
|
||||
UI_EXPORT UIString GetFileName(const UIString& filename);
|
||||
}
|
||||
namespace Directory {
|
||||
//检测目录是否存在
|
||||
UI_EXPORT bool Exists(const UIString& directoryNme);
|
||||
//创建目录 不存在的多级目录将会自动创建
|
||||
UI_EXPORT bool Create(const UIString& path);
|
||||
//将目录和目录下的文件复制到指定的位置
|
||||
UI_EXPORT void Copy(const UIString& srcPath, const UIString& desPath);
|
||||
//使用通配符搜索文件和目录
|
||||
UI_EXPORT void Find(const UIString& directory, std::vector<FileInfo>* result, const UIString& pattern = "*.*", bool loopDir = true);
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user