文書   >   Foundation   >   Stream,Socket   >   OutputStream
クラス
OutputStream
書き込み専用のストリーム機能を提供するストリーム。
概観
OutputStream は、Core Foundation の 対応する CFWriteStream を使用した "通話無料でブリッジ" されています。通話無料のブリッジの詳細については、通話無料でブリッジ を参照してください。
サブクラス化する際の注意
NSOutputStream は NSStream の具象サブクラスで、データをストリームに書き込むことができます。 NSOutputStream は、この機能が必要なほとんどの状況ではおそらく十分ですが、より特殊な動作が必要な場合 (例えば、データをストリームに記録するなど)、NSOutputStream のサブクラスを作成できます。
オーバーライドすべきメソッド
NSOutputStream のサブクラスを作成するには、サポートされているストリームデータの型のイニシャライザを実装し、既存のイニシャライザを適切に再実装しなければなりません。以下のメソッドの完全な実装も提供しなければなりません。
- write(_:maxLength:)
- 書き込み操作が成功した場合は、ストリームに置かれた実際のバイト数を返します。
- ストリームが固定長であり、ストリームの容量に達した場合は、0 を返します。
- ストリームへの書き込み時にエラーがあった場合は、-1 を返します。
- hasSpaceAvailable
現在の書き込みポインターから、クライアントが提供するバッファー (最初のパラメーター) から maxLength: パラメーターで指定されたバイト数まで取り出し、ストリームに配置します。バッファは、2 番目のパラメータで指定されたサイズでなければなりません。次の操作を準備するには、書き込みポインタを書き込まれたバイト数でオフセットします。現在の操作の結果に基づいて符号付き整数を返します。
ストリームが現在、より多くのデータを受け入れることができる場合は true、そうでない場合は false を返します。NSOutputStream と意味的に互換性を持たせたい場合は、空きがあるかどうかを判断するために書き込みを試みなければならない場合は true を返します。
トピックス
ストリームの作成
class fun toMemory( )
ストリームデータをメモリに書き込む初期化された出力ストリームを作成して返します。
init(toMemory: ())
メモリに書き込む初期化された出力ストリームを返します。
init(toBuffer: UnsafeMutablePointer<UInt8>, capacity: Int)
指定されたバッファに書き込むことができる、初期化された出力ストリームを返します。
init?(toFileAtPath: String, append: Bool)
指定されたファイルに書き込むための初期化された出力ストリームを返します。
指定された URL に書き込むための初期化された出力ストリームを返します。
ストリームの使用
var hasSpaceAvailable: Bool
受信者に書き込むことができるかどうかを示すブール値。
func write(UnsafePointer<UInt8>, maxLength: Int)
提供されたデータバッファの内容を受信者に書き込みます。
関連
以下よりの継承
Stream
以下への準拠
以下も見よ
ストリーム
class Stream
ストリームを表す抽象クラス。
class InputStream
読み取り専用ストリーム機能を提供するストリーム。
protocol StreamDelegate
ストリームインスタンスのデリゲートがストリーム上のイベントを処理するために使用するインターフェイス。