ESFileManager
一个用于 iOS 文件管理器的简单库
安装
Swift 包管理器
将 ESFileManager 的 git URL 添加到您的项目,它会自动安装
CocoaPods
只需像这样将 ESFileManager 添加到您的 podfile 中
pod 'ESPFileManager'
为什么叫 esPfilemanager?因为在我之前,有一个人用 ESFIleManager 命名了库
用法
标准使用
- 在项目中导入
import ESFileManager
- 创建ESFileManager的属性。在参数中使用了默认的读写数据方法,但您可以使用具有默认值“未与iCloud同步的文档文件夹”的方式初始化。您可以了解有关这些文件夹及其用途
private var fileManager: ESFileManagerProtocol = ESFileManager()
- 您可以使用read功能读取数据。读取和写入使用文件模型,其中包含带文件名和扩展名的模型
private func readFile() {
// create name and extension of file to read
let file = ESFileNameModel(name: "SwiftDoc", fileExtension: .txt)
//read this file. At = nil cause we use default directory
fileManager.read(fileStorage: file, at: nil) { (file, error) in
//fetch error
if let error = error {
//fetch error
return
}
//fetch empty state of file
guard let data = file?.data else {
// file is empty!
return
}
//show our file
let stringFile = String(data: data, encoding: .utf8)
//You successful read the file!
}
}
- 您可以使用write功能将文件写入磁盘
private func writeFile() {
// create data to write
let data = "Swift is amazing!".data(using: .utf8)
let fileName = ESFileNameModel(name: "SwiftDoc", fileExtension: .txt)
let file = ESFileModel(data: data, name: fileName)
// write data. At = nil cause we use default directory from prepareVC method
fileManager.write(file: file, at: nil) { (error) in
if let error = error {
//error
return
}
//You successful recorded the file!
}
}
- 要删除文件,请使用remove功能
private func removeFile() {
// create name and extension of file to remove
let file = ESFileNameModel(name: "SwiftDoc", fileExtension: .txt)
//remove this file. At = nil cause we use default directory
fileManager.remove(file: file, at: nil) { (error) in
//fetch error
if let error = error {
// fetch error
return
}
//You successful remove this file!
}
}
- 您可以使用list功能获取目录中文件的列表