2010年07月07日

[jython] 続続続・バージョン

(=゚ω゚)ノぃょぅ

化石みたいなバージョンで開発すると頭がウニになるな。
今回のドツボポイントは日本語だ。

ログを出力するために共通系の処理へバイパスしたんだが
羅列される\uXXXX\uXXX\uXXX\uXXX\uXXX

ハイハイ、ワロスワロス。utf-8ね。

hoge.encode("shift_jis") と・・・

unknown encoding: shift_jis

( ゚Д゚)ハァ?

pythonのHPでもその他サイトでもおkだし、ローカルのcygwinでpython起動しても
ちゃんと動くから、またバージョンか・・。

調べてみると、JapaneseCodecsっていうパッケージが必要で、入ってないし
諸々の制約やなんやらで入れられないし。
ローカルのpythonは2.5.5だから標準で組み込まれているのね、なるほどね。
(2.4から標準)

さて、どうするか・・。

・javaでos.system()に相当する機能を車輪の再開発 → 却下
・日本語をつかわない → 個人的には(・∀・)イイネ!!ー でも却下
・デコードを自前でやる → 車輪の再開発でしかない却下

普通にprintとかはできるから、shift_jisな瞬間はある模様なんだが、、、と
いろいろ調べてみたらどうやらパイパス用に作った関数を通すと\uXXXX表記になるみたいで
そこだけ切り出したpyファイルを作って再現させてみようとすると再現しない。

キタコレ

結論から言うと、可変長引数に日本語文字を入れると\uXXXX表記に変換されている模様
こんな化石みたいなバージョンでこんなことしてドツボる人もあんまり居ないだろうけど
備忘録として記録しておこう。

可変長引数をやめて、リストやタプル、javaのコンテナでやるといい。
あー、('A`)マンドクセ


化石て2回書いてしまった。
posted by koteitan at 10:32| Comment(0) | TrackBack(0) | jython | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/155671969

この記事へのトラックバック