Discussion:
[J2SE] JTextField 與 MySQL 之間的問題
(时间太久无法回复)
沒好事
2007-02-02 10:39:11 UTC
Permalink
現有一個 JTextFiled 可以輸入文字,輸入完後儲存至資料庫中

然而我儲存至資料庫後會變成一堆問號 (因為輸入的是中文)

在命令提示字元底下,我測試 insert 也是用中文字

就可以正常顯示

曾經試過

String s = new String(JTextField.getText().getBytes(),"utf8");

或者是big5,也是不行,不曉得出了些什麼問題?

謝謝
--
mysql version:5.0.22
create table with "default char set utf8"

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.96.181
Willie Liao
2007-02-03 03:04:46 UTC
Permalink
Please specify some of your settings:

Did you set locale in your java program?
Which DB are you using?
Which DB Driver are you using?
What locale/language setting is your DB instance?

If you still cannot figure out, use XML as data storage (JDBC allows you
to do that).

I am coding java commerically and we support 11 languages. Trust me, there
are more ways than you know to screw up encoding in JAVA :)

Willie

※ 引述《NothingGood (沒好事)》之銘言:
: 現有一個 JTextFiled 可以輸入文字,輸入完後儲存至資料庫中
: 然而我儲存至資料庫後會變成一堆問號 (因為輸入的是中文)
: 在命令提示字元底下,我測試 insert 也是用中文字
: 就可以正常顯示
: 曾經試過
: String s = new String(JTextField.getText().getBytes(),"utf8");
: 或者是big5,也是不行,不曉得出了些什麼問題?
: 謝謝

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 69.143.17.31
Willie Liao
2007-02-03 03:16:10 UTC
Permalink
Add useUnicode=true&characterEncoding=utf8
Also, if you are using JSP, make the page encoding to UTF-8

Willie

※ 引述《NothingGood (沒好事)》之銘言:
: 現有一個 JTextFiled 可以輸入文字,輸入完後儲存至資料庫中
: 然而我儲存至資料庫後會變成一堆問號 (因為輸入的是中文)
: 在命令提示字元底下,我測試 insert 也是用中文字
: 就可以正常顯示
: 曾經試過
: String s = new String(JTextField.getText().getBytes(),"utf8");
: 或者是big5,也是不行,不曉得出了些什麼問題?
: 謝謝

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 69.143.17.31
※ 編輯: willieliao 來自: 69.143.17.31 (02/03 11:16)
愚人
2007-02-03 03:31:43 UTC
Permalink
※ 引述《willieliao (Willie Liao)》之銘言:
: Add useUnicode=true&characterEncoding=utf8
: Also, if you are using JSP, make the page encoding to UTF-8
: Willie

useUnicode=true&characterEncoding=utf8
用 useUnicode=true&characterEncoding=utf8 :D

btw. 沒看到他 mysql 的設定,預設是 latin1

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.59.94.161

Loading...