当app name包含" space"时,Bundle.main.path(forResource:ofType:inDirectory :)返回nil。

时间:2017-09-19 06:30:35

标签: ios swift3

当应用的名称有空格时,为什么Bundle.main.path(forResource: "testFile", ofType: "rtf")会返回nil?谁有人遇到这个?也许能够修复?如果我删除"空格"则不会发生错误。在应用程序的名称。

当我打印路径时,结果为/Users/<user>/Library/Developer/CoreSimulator/Devices/915D4A93-D812-4180-A49E-6BFA3BD77986/data/Containers/Bundle/Application/8623072B-7528-463C-971F-ECD1FB89BDDB/Test Application.app/testFile.rtf,因为您可能会注意到该应用的名称&#34; Test Application.app&#34;有空间。这会导致Bundle.main.path返回nil

2 个答案:

答案 0 :(得分:4)

强烈建议使用与URL相关的API

Bundle.main.url(forResource: "testFile", withExtension: "rtf") 

答案 1 :(得分:1)

Swift 4.1 它与我一起阅读我的应用程序中的mp3文件 Bundle.main.paths(forResourcesOfType:“mp3”,inDirectory:“”)