Swift – ¿Cómo obtengo la ruta del archivo dentro de una carpeta?

Tengo un conjunto de archivos de audio dentro de una carpeta. Puedo acceder al archivo cuando el archivo se coloca en el paquete principal, pero si los archivos se mueven dentro de la carpeta, no puedo acceder a los archivos.

Código:

let audioFileName:String = "audioFiles/" + String(index) let audioFile = NSBundle.mainBundle().pathForResource(audioFileName, ofType: "mp3")! 

Tengo un archivo de audio dentro de la carpeta audioFiles y me gustaría obtener su ruta.

Error:

error fatal: encontrado inesperadamente nulo mientras desenvuelve un valor opcional

Primero asegúrese de arrastrar su carpeta audioFiles a su proyecto para seleccionar crear referencias de carpeta y debería mostrar una carpeta azul.

enter image description here

enter image description here

También el método NSBundle pathForResource tiene un inicializador que puede especificar en qué directorio se encuentran sus archivos:

 let audioFileName = "audioName" if let audioFilePath = Bundle.main.path(forResource: audioFileName, ofType: "mp3", inDirectory: "audioFiles") { print(audioFilePath) } 

Si desea obtener esa URL de archivo, puede usar el método NSBundle URLForResource (withExtension :, subdirectorio 🙂

 if let audioFileURL = Bundle.main.url(forResource: audioFileName, withExtension: "mp3", subdirectory: "audioFiles") { print(audioFileURL) }