[Seasar-user:14473] Re: [Teeda]文字化けについて

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2008年 5月 28日 (水) 16:30:16 JST


小林 (koichik) です.

Date:    Wed, 28 May 2008 08:36:55 +0900
From:    fujihara <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:14467] Re: [Teeda]文字化けについて

> '−'=0xff0d
> 
> で正常に思われますがいかがでしょうか?

予想外でした.
PostgreSQL って,EUC なのに Shift_JIS
(Windows-31J) 風にマッピングするんですね.
つまり,

DB(EUC) --> Java(Unicode) --> HTML(Shift_JIS)

というような場合に文字化けしないように
なっていて,

DB(EUC) --> Java(Unicode) --> HTML(EUC)

だと逆に文字化けする,ということかも.
Windows ユーザに配慮したんだろうけど
どうなんだか.

ともあれ (JW),そういうことなら画面を
Shift_JIS (Windows-31J) にするのが
手っ取り早いように思います.
DB が EUC だから画面も EUC という程度の
理由ならそれがよいかと.

画面を EUC のままにしたいなら,DB から
取ってきたところか,画面に出すところの
どちらかで

0xFF5E -> 0x301C
0xFF0D -> 0x2212

という変換をする必要があります.

S2Dao を使っているなら,ソースフォルダに
org/seasar/extension/jdbc/impl ディレクトリを
作成して添付のソースをコピーして,jdbc.dicon の

<component class="org.seasar.extension.jdbc.impl.BasicResultSetFactory"/>

を

<component class="org.seasar.extension.jdbc.impl.PostgreEucResultSetFactory"/>

にすれば DB から取ってきたところで
変換できます.


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PostgreEucResultSet.java
Type: application/octet-stream
Size: 2922 bytes
Desc: 無し
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20080528/7b999e8b/attachment-0004.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PostgreEucResultSetFactory.java
Type: application/octet-stream
Size: 1298 bytes
Desc: 無し
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20080528/7b999e8b/attachment-0005.obj>


Seasar-user メーリングリストの案内