私のアプリでは、XMLを含むインターネットからファイルをダウンロードし、解析する必要があります。 私が抱えている問題は、ファイルがダウンロードされると、その内容をNSData変数にロードしようとするため、解析関数を呼び出すことができますが、期待した結果が得られません。ダウンロードしたファイルをNSData変数にロードする方法
ので、手順はこのように書き:
私はURLSessionを使用してファイルをダウンロードする(私は手動でファイルを開いて、その内容が有効である確認したので、これは正しいです)
のletタスク= downloadsSession .downloadTask(持つ:URLRequestのようlobj_Request)
task.resume()
デリゲートメソッドdidFinishD ownloadingToURLがトリガされ、私はNSDataの変数にファイルの内容をロードしようとするためにそれを使用
てみましょうです。xmlData =のNSData(contentsOf:location.absoluteURL)
は私がです。xmlDataの内容を印刷し、代わりに取得します
だから私は私が間違っているのかわからない:XMLは、私はこのような何かを得ます。
ヒント、助け、アドバイスなどありがとうございます。
ありがとうございます。
最後にURLを2回ダウンロードすることができました。)既にデータをダウンロードしていて、キャッシュされていなければ、 'contentsOf:location'への同期呼び出しのためにデリゲートが長時間ブロックされる可能性があります。 –
@Daij:いいえ、ドキュメントをチェックしてください: 'location'はローカルの一時ファイルです。それにもかかわらず、余分な踏み台で「本当の」作業をすることは正しいです。ドキュメントをもう一度見てください。 '読み込みのためにファイルを開くことを選択した場合、デリゲートキューをブロックしないように、 –
申し訳ありません。失われた投票 –