NSFileHandleクラス

2010. 10. 23
●概要

NSFileHandleオブジェクトは、ファイルまたは通信チャンネルを開いてアクセスするための、オブジェクト指向のラッパーを提供します。

着信接続を受信するNSFileHandleオブジェクトの生成は、サンプルプロジェクトのPictureSharingを参照してください。
(ファイルハンドルオブジェクトは、BSDコールを介して取得したソケットから初期化されます)

:NSFileHandleオブジェクトの解放は、initWithFileDescriptor:またはinitWithFileDescriptor:closeOnDealloc:の引数にパラーメタとしてNOを渡して生成されたNSFileHandleオブジェクトを除いて、記述子を削除し、開いているファイルまたはチャンネルを閉じてください。



●タスク

●ファイルハンドルの取得

+ fileHandleForReadingAtPath:
+ fileHandleForReadingFromURL:error:
+ fileHandleForWritingAtPath:
+ fileHandleForWritingToURL:error:
+ fileHandleForUpdatingAtPath:
+ fileHandleForUpdatingURL:error:
+ fileHandleWithStandardError
+ fileHandleWithStandardInput
+ fileHandleWithStandardOutput
+ fileHandleWithNullDevice

●ファイルハンドルの生成

– initWithFileDescriptor:
– initWithFileDescriptor:closeOnDealloc:

●ファイル記述子の取得

– fileDescriptor

●ファイルハンドルからの読み込み

– availableData
– readDataToEndOfFile
– readDataOfLength:

●ファイルハンドルへの書き込み

– writeData:

●非同期通信

– acceptConnectionInBackgroundAndNotify
– acceptConnectionInBackgroundAndNotifyForModes:
– readInBackgroundAndNotify
– readInBackgroundAndNotifyForModes:
– readToEndOfFileInBackgroundAndNotify
– readToEndOfFileInBackgroundAndNotifyForModes:
– waitForDataInBackgroundAndNotify
– waitForDataInBackgroundAndNotifyForModes:

●ファイル内の検索

– offsetInFile
– seekToEndOfFile
– seekToFileOffset:

●ファイルの操作

– closeFile
– synchronizeFile
– truncateFileAtOffset:



●クラスメソッド

fileHandleForReadingAtPath:

+ (id)fileHandleForReadingAtPath:(NSString *)path

読み込み用として、指定したパスにあるファイルやデバイス、または名付けたソケットのファイルハンドルを初期化して返します。

指定したパスにファイルが無い場合はnilを返します。

ポインタはファイルの先頭に設定されます。

返されるオブジェクトはNSFileHandleクラスの『read~』メソッドのみ応答できます。

path:アクセスするファイルやデバイス、または名付けたソケットへのパスを指定します。


fileHandleForWritingAtPath:

+ (id)fileHandleForWritingToPath:(NSString *)path

書き込み用として、指定したパスにあるファイルやデバイス、または名付けたソケットのファイルハンドルを初期化して返します。

指定したパスにファイルが無い場合はnilを返します。

ポインタはファイルの先頭に設定されます。

返されるオブジェクトはwriteData:のみ応答できます。

path:アクセスするファイルやデバイス、または名付けたソケットへのパスを指定します。



●インスタンスメソッド

closeFile

- (void)closeFile

書き込み用として接続しているファイルや通信チャンネルとのアクセスを切断します。

ファイルや通信チャンネルを使い終わったらファイルハンドルにレシーバを閉じる指示を出します。

closeFileで閉じたファイルに読み込みしようとすると例外が発生します。


readDataOfLength:

- (NSData *)readDataOfLength:(NSUInteger)length

指定した長さのバイト数のデータをレシーバから読み込みます。

ファイルの場合、ポインタから指定した長さかファイル終端の、どちらか早い方が検出された分を読み込みます。

ポインタがファイルの終端であったり、通信チャンネルがファイルの終端を示している場合は、空のNSDataを返します。

ファイルハンドルの型が特定できない、またはファイルやチャンネルが読み込めなかった場合は、NSFileHandleOperationExceptionを発生させます。

length:レシーバから読み込むバイト数を指定します。


writeData:

- (void)writeData:(NSData *)data

指定したデータをファイル、デバイス、パイプまたはソケットに書き込みます。

ファイルの場合、現在のポインタの位置からデータを書き込みます。

データを書き込んだ後、書き込んだバイト数の分ファイルのポインタを移動します。

ファイル記述子が閉じていたり、有効でなかったり、レシーバがパイプやソケットのエンドポイントを示していたり、ファイルシステムに空き領域が無かったり、その他書き込みエラーがあった場合は例外を発生させます。

data:書き込み用データを指定します。



●定数



●通知



参考文献

NSFileHandle Class Reference






Bose SoundSport wireless headphones
0 Comments
Leave a comment
管理者にだけ表示を許可する
Top
0 Trackbacks
Top
Calendar
02 | 2017/03 | 03
Sun Mon Tue Wed Thu Fri Sat
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 -
Recent Articles
iTunes


Swift
Categories
Tips
WACOM


Reference
NSApplicationDelegateプロトコル
NSArrayクラス
NSAutoreleasePoolクラス
NSBundleクラス
NSBundle UIKit追加分
NSCalendarクラス
NSCoderクラス
NSCodingプロトコル
NSCopyingプロトコル
NSDataクラス
NSDateクラス
NSDateFormatterクラス
NSDictionaryクラス
NSEntityDescriptionクラス
NSEnumeratorクラス
NSErrorクラス
NSExceptionクラス
NSFetchRequestクラス
NSFileHandleクラス
NSFileManagerクラス
NSIndexPathクラス
NSIndexPath UIKit追加分
NSKeyedArchiverクラス
NSKeyedUnarchiverクラス
NSKeyValueCodingプロトコル
NSLocaleクラス
NSManagedObjectクラス
NSManagedObjectContextクラス
NSManagedObjectModelクラス
NSMutableArrayクラス
NSMutableCopyingプロトコル
NSMutableDictionaryクラス
NSMutableSetクラス
NSNotificationクラス
NSNotificationCenterクラス
NSNullクラス
NSNumberクラス
NSObjectクラス
NSObject UIKit追加分
NSObjectプロトコル
NSPersistentStoreクラス
NSPersistentStoreCoordinatorクラス
NSPredicateクラス
NSPropertyListSerializationクラス
NSRunLoopクラス
NSSetクラス
NSStringクラス
NSString UIKit追加分
NSTimerクラス
NSTimeZoneクラス
NSURLクラス
NSURLProtectionSpaceクラス
NSURLRequestクラス
NSUserDefaultsクラス
NSValueクラス

UIActionSheetクラス
UIActionSheetDelegateプロトコル
UIActivityIndicatorViewクラス
UIAlertViewクラス
UIAlertViewDelegateプロトコル
UIApplicationクラス
UIApplicationDelegateプロトコル
UIBarButtonItemクラス
UIBarItemクラス
UIButtonクラス
UIColorクラス
UIControlクラス
UIDatePickerクラス
UIDeviceクラス
UIEventクラス
UIFontクラス
UIGestureRecognizerクラス
UIImageクラス
UIImageViewクラス
UIKit Function
UILabelクラス
UINavigationControllerクラス
UINavigationItemクラス
UIPickerViewクラス
UIPickerViewDataSourceプロトコル
UIPickerViewDelegateプロトコル
UIPinchGestureRecognizerクラス
UIResponderクラス
UIScreenクラス
UIScrollViewクラス
UISearchBarクラス
UISearchBarDelegateプロトコル
UISegmentedControlクラス
UISliderクラス
UISwipeGestureRecognizerクラス
UISwitchクラス
UITableViewクラス
UITableViewCellクラス
UITableViewControllerクラス
UITableViewDataSourceプロトコル
UITableViewDelegateプロトコル
UITapGestureRecognizerクラス
UITextFieldクラス
UITextFieldDelegateプロトコル
UITextInputTraitsプロトコル
UITextViewクラス
UITextViewDelegateプロトコル
UIToolbarクラス
UITouchクラス
UIViewクラス
UIViewControllerクラス
UIWebViewクラス
UIWebViewDelegateプロトコル
UIWindowクラス

AVAudioPlayerクラス
AVAudioPlayerDelegateプロトコル

CADisplayLinkクラス
CAEAGLLayerクラス
CALayerクラス

CGAffineTransform
CGBitmapContext
CGColor
CGColorSpace
CGContext
CGGeometry
CGImage
CGPath

EAGLContextクラス
EAGLDrawableプロトコル

Foundation Constants
Foundation Data Types
Foundation Functions

MPMediaItemクラス
MPMediaItemArtworkクラス
MPMediaPlaylistクラス
MPMediaPropertyPredicateクラス
MPMediaQueryクラス
MPMusicPlayerControllerクラス

Randomization Services

System Sound Services
BOSE

Bose SoundSport wireless headphones
ARC
Technical Q&A
情報プロパティリストキー
Start Developing iOS Apps Today
SQLite
OpenGL ES
Amazon


Monthly Archives
Recent Comments
Recent TrackBacks
RSS Link
Profile

Author:水月杏香
永遠の初心者プログラマ。

QR Code
QR
Visitors