như tiêu đề cho biết, tôi gặp sự cố giữa java và mysqlJava + Mysql UTF8 Vấn đề
Mysql DB, bảng và cột là utf8_unicode_ci. Tôi có một ứng dụng mất một số đầu vào từ một xml, sau đó soạn truy vấn ...
public String [] saveField(String xmltag, String lang){
NodeList nodo = this.doc.getElementsByTagName(xmltag);
String [] pos = new String[nodo.getLength()];
for (int i = 0 ; i < nodo.getLength() ; i++) {
Node child = nodo.item(i);
pos[i] = "INSERT INTO table (id, lang, value) VALUES (" +
child.getAttributes().getNamedItem("id").getNodeValue().toString() + " , " +
lang + " , " +
"'" + child.getFirstChild().getTextContent() + "'" +
");";
}
return pos;
}
phương pháp này trả về một mảng các chuỗi có chứa một hay nhiều truy vấn SQL chèn ... sau đó
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection("jdbc:mysql:///dbname", "user", "pass");
.....
Statement s; s =
this.con.createStatement();
s.execute(query);
cả hai với s.execyte
và s.executeUpdate
các ký tự đặc biệt được lưu dưới dạng?
trở nên đặc biệt char không được lưu trữ một cách chính xác: מסירות קצרות
được lưu giữ như ?????????
Hi!
được lưu giữ như Hi!
Bất cứ lời khuyên?
Cảm ơn
Bạn đang đọc XML nguồn như thế nào? Nó đến từ một tập tin hay nó là một chuỗi từ một dịch vụ web, hay cái gì khác? Có thể bạn đọc bản gốc của xml đang gây ra sự cố. –
đó là một chuỗi từ một webservice, tôi sử dụng db.parse ("http: // ......") để lấy nội dung xml ... – Marcx