現在、私のホームページでは多くのJavaクラスとMYSQLデータベースが完全にサポートされています。ÅØÆ - HTMLからのテキストエンコーディングの問題 - > Java - > MySQL - > Java - > HTML
私はHTML形式で視聴者がコメントを入力できるようにしています。
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String[] data = {in.readLine()};
コメントし、次でデータベースに解析されます:私が入力した場合
Connection conn;
forName("com.mysql.jdbc.Driver").newInstance();
//String url = "jdbc:mysql://localhost/pagebuilder";
String url = "jdbc:mysql://localhost/pagebuilder?useUnicode=true&characterEncoding=utf-8";
//String url = "jdbc:mysql://localhost/pagebuilder?characterEncoding=utf-8";
String userName = "username";
String password = "password";
conn = DriverManager.getConnection(url, userName, password);
return conn;
}
public static void closeConnection(Connection conn) throws SQLException {
conn.close();
}
public static void comment(String image, String name, String comment, String email){
Connection conn = null;
try {
conn = Database.getConnection();
}
catch (Exception e) {
e.printStackTrace();
}
if (conn != null) {
try {
java.sql.Timestamp sqlDate = new java.sql.Timestamp(new java.util.Date().getTime());
PreparedStatement pstmt1 = conn.prepareStatement("INSERT INTO comment VALUES(0,?,?,?,?,?)");
pstmt1.setTimestamp(1,sqlDate);
pstmt1.setString(2, image);
pstmt1.setString(3, name);
pstmt1.setString(4, comment);
pstmt1.setString(5, email);
pstmt1.executeUpdate();
conn.close();
}
このテキストは、その後、私はテキストを読んでJavaクラスにCGIスクリプトによって解析されます次のように出力されæøp
あるいはカンマなどの特殊文字デンマーク:
入力:,æøå
出力:%2C%C3%A6%C3%B8%C3%A5
入力と出力を同じにするにはどうすればよいですか?
私は、HTML、Java接続、データベースをUTF-8に設定しようとしましたが、運が無かったのです。
どうすればよいですか?
完璧な、多くのありがとう。文字がデータベースに正しく挿入されるようになりました。今私はちょうどそれらを正しく取得し、それらを表示する必要があります。現在私は???を得る。あなたの助けに多くのおかげです。 –
いつあなたは???を得ていますか? - ウェブブラウザから?それはmysqlコマンドラインクライアントから正しく表示されますか? – torstenvl
Javaの出力ライターにエンコードを追加して修正しました。これで問題は解決し、すべてが今すぐ表示されるようになりました。もう一度、あなたの助けに感謝します。 –