在 Swift 中检查文件是不是存在于带有文件名前缀的目录中
Posted
技术标签:
【中文标题】在 Swift 中检查文件是不是存在于带有文件名前缀的目录中【英文标题】:Check file exists in directory with prefix of file name in Swift在 Swift 中检查文件是否存在于带有文件名前缀的目录中 【发布时间】:2015-07-09 09:38:55 【问题描述】:我想检查我的文件是否在 SWIFT 中仅存在文件名前缀。
例如
我的文件名是 Companies_12344
所以在 _ 值是动态的但“Companies_”之后是静态的。
我该怎么做?
我已经在下面完成了拆分文件名代码
如何通过 NSFileManager 检查是否存在带有“Companies_”的文件名
我下面的代码用于拆分
func splitFilename(str: String) -> (name: String, ext: String)?
if let rDotIdx = find(reverse(str), "_")
let dotIdx = advance(str.endIndex, -rDotIdx)
let fname = str[str.startIndex..<advance(dotIdx, -1)]
println("splitFilename >> Split File Name >>\(fname)")
return nil
【问题讨论】:
对于拆分,您只需执行 str.componentsSeparatedByString("_") 是的,这很好......但是有了这个前缀名称,我如何从 NSFileManager 检查文件是否存在? 和你之前的问题***.com/questions/31295161/…有什么区别? Martin,上一篇是关于要拆分的文件名,有点混乱..所以这次我更准确地添加了它 NSFIlemanager... 【参考方案1】:我认为你需要这段代码:
let str = "Companies_12344"
if str.hasPrefix("Companies")
println("Yes, this one has 'Companies' as a prefix")
let compos = str.componentsSeparatedByString("_")
if let file = compos.first
println("There was a code after the prefix: \(file)")
var paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as! String
var yourPath = paths.stringByAppendingPathComponent("\(file)_")
var checkValidation = NSFileManager.defaultManager()
if (checkValidation.fileExistsAtPath(yourPath))
println("FILE AVAILABLE");
else
println("FILE NOT AVAILABLE");
【讨论】:
以上是关于在 Swift 中检查文件是不是存在于带有文件名前缀的目录中的主要内容,如果未能解决你的问题,请参考以下文章