文書   >   Foundation   >   Numbers,Data,and Basic Values   >   Data   >   NSData   >   init(contentsOf:options:)
イニシャライザ
init(contentsOf:options:)
与えられた URL で指定された場所のデータを使用してデータオブジェクトを初期化します。
宣言
init(contentsOf url: URL, options readOptionsMask: NSData.ReadingOptions = []) throws
パラメータ
aURL | そこからデータを読み込むべき URL。 |
mask | データを読み取るためのオプションを指定するマスク。定数部分は、NSData.ReadingOptions で説明しています。 |
戻り値
aURL で指定された場所からのデータで初期化されたデータオブジェクト。
議論
このメソッドを使用して data:// の URL を NSData オブジェクトに変換します。短い (short) ファイルを同期して読み込むために使うこともできます。潜在的に大きなファイルを読み込む必要がある場合は、inputStreamWithURL: を使用してストリームを開き、増分的にファイルを読み込みます。
この同期メソッドを使用してネットワークベースの URL を要求しないでください。ネットワークベースの URL の場合、このメソッドは低速ネットワーク上で現在のスレッドを数十秒間ブロックし、そのためユーザーエクスペリエンスが低下し、iOS ではアプリが終了する可能性があります。
代わりに、ファイル以外の URL の場合は、URLSession クラスの dataTask(with:completionHandler:) メソッドを使用することを検討してください。例については、ウェブサイトデータをメモリにフェッチする を参照してください。
Swift では、この API はイニシャライザとしてインポートされ、失敗の場合にエラーをスローすることを示す throws キーワードでマークされています。
Swift プログラミング言語 (Swift 4.1) の エラー処理 と Cocoa および Objective-C でSwiftを使用する (Swift 4.1) の エラー処理 で説明したように、try 式でこのメソッドを呼び出し、do 文の catch 節でエラーを処理します。
以下も見よ
ファイルからデータを読み込む
与えられた path にあるファイルの内容でデータオブジェクトを初期化します。
init(contentsOfFile: String, options: NSData.ReadingOptions = [])
与えられた path にあるファイルの内容でデータオブジェクトを初期化します。
与えられた URL で指定された場所のデータを使用してデータオブジェクトを初期化します。
データオブジェクトの読み込みに使用するメソッドのオプション。
init?(contentsOfMappedFile: String)
与えられたパスで指定されたマップされたファイルの内容でデータオブジェクトを初期化します。
  廃止  
class func dataWithContentsOfMappedFile(String) -> Any?
与えられたパスのマップされたファイルからデータオブジェクトを作成して返します。
  廃止