解説
ファイルディスクリプタのラッパー。
ファイル、ソケット、パイプ、デバイスデータなどの読み書きに使います。
継承 | NSObject |
準拠 | NSObject (NSObject) |
フレームワーク | /System/Library/Frameworks/Foundation.framework |
使用可能 | Mac OS X v10.0以降 |
iOS 2.0以降 | |
定義 | NSFileHandle.h |
初期化
読み込みのみのファイルハンドルを作成するには(+ fileHandleForReadingFromURL:error)メソッドを使用します。
書き込みのみのファイルハンドルを作成するには(+ fileHandleForWritingToURL:error)メソッドを使用します。
読み書き可能なファイルハンドルを作成するには(+ fileHandleForUpdatingURL:error)メソッドを使用します。
それぞれパスで指定することができるメソッドがありますが、現在はURL形式の使用が推奨されていますので、使わない方が良いでしょう。(+ fileHandleForReadingAtPath)(+ fileHandleForWritingAtPath)(+ fileHandleForUpdatingAtPath)
標準エラーファイルに関連づけられたファイルハンドルを返します。
+ fileHandleWithStandardError
標準入力ファイルに関連づけられたファイルハンドルを返します。
+ fileHandleWithStandardInput
標準出力ファイルに関連づけられたファイルハンドルを返します。
+ fileHandleWithStandardOutput
nullデバイスに関連づけられたファイルハンドルを返します。
+ fileHandleWithNullDevice
ファイルハンドルの作成
指定したファイル記述子に関連づけられたファイルハンドルオブジェクトを初期化して返します。
– initWithFileDescriptor
指定したファイル記述子と割り当て解除のポリシーに関連づけられたファイルハンドルオブジェクトを返します。
– initWithFileDescriptor:closeOnDealloc
ファイルデスクリプタの取得
レシーバに関連づけられたファイル記述子を返します。
– fileDescriptor
ファイルハンドルから読み込み
レシーバで現在入手可能なデータを返します。
– availableData
同期ファイルまたは最大バイト数のデータを読み込みます。
– readDataToEndOfFile
同期指定したバイト数までのデータを読み込みます。
– readDataOfLength
ファイルハンドルへ書く
ファイルハンドルにデータを書き込むには(– writeData)メソッドを使用します。
*
ブロックを使っての書き込み
非同期的にファイルハンドルの内容を読み取るために使用するブロック
デフォルトはnil
このプロパティに有効なブロックを割り当てる
readabilityHandler property
非同期的にファイルハンドルの内容を書き込むために使用するブロック
デフォルトはnil
このプロパティに有効なブロックを割り当てる
writeabilityHandler property
*
非同期の操作
バックグラウンドでソケット接続を受け取り、通信チャネルの「近く」(クライアント)側のファイルハンドルを作成します。
– acceptConnectionInBackgroundAndNotify
バックグラウンドでソケット接続を受け取り、通信チャネルの「近く」(クライアント)側の入るハンドルを作成します。
– acceptConnectionInBackgroundAndNotifyForModes
ファイルや通信チャネルから読み込みます。
バックグラウンドと終了の通知ポスト
– readInBackgroundAndNotify
ファイルや通信チャネルから読み込みます。
バックグラウンドと終了の通知ポスト
– readInBackgroundAndNotifyForModes
ファイルや通信チャネルからファイルの最後まで読みます。バックグラウンドで。終わったと通知がポストされるまで
– readToEndOfFileInBackgroundAndNotify
ファイルや通信チャネルからファイルの最後まで読みます。バックグラウンドで。終わったと通知がポストされる。
– readToEndOfFileInBackgroundAndNotifyForModes
非同期的にデータが利用可能であるかどうかを確認します。
– waitForDataInBackgroundAndNotify
非同期的にデータが利用可能であるかどうかを確認します。
– waitForDataInBackgroundAndNotifyForModes
ファイルの検索
レシーバで表されるファイル内のファイルポインタの位置を返します。
– offsetInFile
レシーバで参照されるファイルの末尾にファイルポインタを置き新しいオフセットファイルを返します。
– seekToEndOfFile
指定されたレシーバで表されるファイル内のオフセットにファイルポインタを移動します。
– seekToFileOffset
ファイルの操作
ファイルハンドルを閉じるには(– closeFile)メソッドを使用します。ファイルハンドルを同期するには(– synchronizeFile)メソッドを使用します。
指定の位置にファイルポインタを置き、拡張または切り捨てを行います。拡張する場合は追加された部分はnullに
– truncateFileAtOffset
適合するプロトコル
メソッドとプロパティ
ファイルハンドルを得る
+ fileHandleForReadingAtPath
+ fileHandleForReadingFromURL:error
+ fileHandleForWritingAtPath
+ fileHandleForWritingToURL:error
+ fileHandleForUpdatingAtPath
+ fileHandleForUpdatingURL:error
+ fileHandleWithStandardError
+ fileHandleWithStandardInput
+ fileHandleWithStandardOutput
+ fileHandleWithNullDevice
ファイルデスクリプタを得る
ファイルハンドルに書く
ブロックスで読み書き
readabilityHandler property
writeabilityHandler property
非同期通信
– acceptConnectionInBackgroundAndNotify
– acceptConnectionInBackgroundAndNotifyForModes
– readInBackgroundAndNotify
– readInBackgroundAndNotifyForModes
– readToEndOfFileInBackgroundAndNotify
– readToEndOfFileInBackgroundAndNotifyForModes
– waitForDataInBackgroundAndNotify
– waitForDataInBackgroundAndNotifyForModes