0

このコードを使用して ApplicationSupport ディレクトリに書き込もうとしています。ボタンをクリックすると、オプションの値が nil だったというエラーが表示されます。ApplicationSupport ディレクトリにファイルを書き込む正しい方法は何ですか?

class ViewController: UIViewController{
    let fileManager = NSFileManager.defaultManager()
    var suppDir: String = ""
    var test: String = "huhu"
    @IBOutlet weak var button: UIButton!

    override func viewDidLoad() {
        super.viewDidLoad()
        suppDir = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.ApplicationSupportDirectory, NSSearchPathDomainMask.UserDomainMask, true).first!

        if !fileManager.fileExistsAtPath(suppDir){
            do{
                try fileManager.createDirectoryAtPath(suppDir, withIntermediateDirectories: true, attributes: nil)
            }catch{}

        }

        do{
            try test.writeToFile(suppDir, atomically: false, encoding: NSUTF8StringEncoding)
        }catch{}

    }


    @IBAction func buttonPressed(sender: UIButton) {

        let data = fileManager.contentsAtPath(suppDir)
        let datastring = NSString(data: data!, encoding:NSUTF8StringEncoding)
        button.setTitle(String(datastring), forState: UIControlState.Normal)
    }
}
4

1 に答える 1

1

その中のファイルではなく、サポートディレクトリに書き込もうとしています:

try test.writeToFile(suppDir, atomically: false, encoding: NSUTF8StringEncoding)

必要なもの:

let filename = suppDir.stringByAppendingPathComponent("some_file.dat")
try test.writeToFile(filename, atomically: false, encoding: NSUTF8StringEncoding)

また、開発と展開の両方に役立つエラーを報告する必要があります。

于 2015-09-15T17:44:34.773 に答える