StreamWriter クラスは Codec のサブクラスで、以下のメソッ ドを定義しています。全てのストリームライタは、Python の codec レジス トリとの互換性を保つために、これらのメソッドを定義する必要があります。
stream[, errors]) |
全てのストリームライタはコンストラクタとしてこのインタフェースを提供 せねばなりません。キーワード引数を追加しても構いませんが、 Python の codec レジストリはここで定義されている引数だけを使います。
stream は、(バイナリで) 書き込み可能なファイル類似のオブジェクト でなくてはなりません。
StreamWriter は、errors キーワード引数を受けて、異なった エラー処理の仕組みを実装しても構いません。定義済みのパラメタを以下に 示します。
'strict'
ValueError (または、そのサブクラス)
送出します。デフォルトの動作です。
'ignore'
文字を無視して、次の文字から続けます。
'replace'
適切な置換文字で置換します。
'xmlcharrefreplace'
適切な XML 文字参照で置換します。
'backslashreplace'
バックスラッシュ付きのエスケープ
シーケンスで置換します。
errors 引数は、同名の属性に代入されます。この属性を変更すると、 StreamWriter オブジェクトが生きている間に、異なるエラー処理に 変更できます。
errors 引数が取りえる値の種類はregister_error() で 拡張できます。
object) |
list) |
) |
このメソッドが呼び出された場合、出力先データをきれいな状態にし、 わざわざストリーム全体を再スキャンして状態を元に戻さなくても 新しくデータを追加できるようにせねばなりません。
ここまでで挙げたメソッドの他にも、StreamWriter では背後にある ストリームの他の全てのメソッドや属性を継承せねばなりません。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。