週末はプログラミングとホームページ作成に明け暮れた。
Punycodeのエンコーダ・デコーダのエラー検出と入力制約に誤りがあることがわかったので直していた。
その中で、面白いことが分かった。
エンコード文字列やデコード文字列に環境依存で文字数が代わるようなもの
たとえば、改行文字(UNIX系だと1文字(LF)、Windows系だと2文字(CR+LF)、Apple系だと1文字(CR))
等が途中にあると、エンコード、デコード結果が不一致になる。
つまり、Punycodeは、URLの変換には大変向いている(数字、半角英小文字とハイフンだけでエンコードするため)
が、長文のエンコード、デコードには向かない。
エンコードできる文字列の長さは、エンコード前の文字列長とエンコード後の文字列長がともに
256文字以下となる場合に限定される。・・・らしい。
実際のエンコード・デコードがどの環境をターゲットにしているのかわからないと直しようもないので、
今回は、その辺は直さずに、「予期しない文字列は入力されない」前提で、Ver1.0.1.0を今週中にリリースしなおす予定。
あーなんだか疲れたなぁ。
スポンサーサイト
- 2010/04/12(月) 12:35:56|
- 未分類
-
| トラックバック:0
-
| コメント:0