2016-04-12 13 views
1

Ich habe die Textdateien aus dem Paket meiner Anwendung mithilfe des folgenden Codes gelesen. Aber egal, was meine Anwendung nicht mehr finden kann. Ich bin 100% sicher, dass alle meine Dateien in den Assets.xcassets sind, ich kann sie sehen, sie bearbeiten, sie von einem Verzeichnis in ein anderes verwandeln. Aber meine Anwendung will sie nicht lesen, bitte sag mir was ich verpasst habe !!Ich kann meine Textdateien nicht aus dem Paket meiner Anwendung lesen

dies ist das Verfahren, ich verwende ...

func readBundle(file:String) -> String 
{ 
    var res: String = "" 
    if let path = NSBundle.mainBundle().pathForResource(file, ofType: "txt") 
    { 
     let fm = NSFileManager() 
     let exists = fm.fileExistsAtPath(path) 
     if(exists) 
     { 
      let c = fm.contentsAtPath(path) 
      res = NSString(data: c!, encoding: NSUTF8StringEncoding) as! String 
     } 
    } 
    return res 
} 

Ich benutze es wie folgt aus:

let res = readBundle("test") 
print(res) 
+0

ist ich bin nicht sicher, dass diese Textdateien als Assets zu speichern ist der Weg zu gehen. Ich würde bei @ Pyros Antwort für alle Arten von Bundle-Ressourcen bleiben, die keine Artwork sind. – Lasse

+0

http://StackOverflow.com/a/30808846/2303865 –

+0

http://StackOverflow.com/Questions/34548771/swift-how-do-i-get-the-file-path-inside-a-folder/34548888 ? s = 2 | 1.1752 # 34548888 –

Antwort

2

In der anderen Option dann ‚XCAssets‘ können Sie eine separate Ordner/Gruppe Ihrer anderen Ressourcen als Bilder in der Projektstruktur erstellen, überprüfen, ob sie in den Copy Bundle Resource im Build Phase Abschnitt Ihres Projektes Hauptziel bestehen

Wenn Sie fügen Ressource wie diese Ihre aktuellen Code sollte funktionieren, wie es

func readBundle(file:String) -> String 
{ 
    var res: String = "" 
    if let path = NSBundle.mainBundle().pathForResource(file, ofType: "txt") 
    { 
     //you should be able to get the path 
     //other code as you has written in the question 
    } 
    return res 
} 
+0

Dank Pyro, du hast mir das Leben gerettet. Es hat gut funktioniert wie gut !!! –

+0

Ich wollte, aber stackoverflow.com erlaubt mir nicht, dies zu tun, seit ich neu bin –