Я использую Java для вставки данных в таблицы MYSQL, для одного столбца требуются данные, чтобы в нем была надпись Vertical Tab ( VT ).
Я сделал то же самое с php-кодом иэто довольно просто, просто написав "\ v", данные в таблице выглядят так:
Проблема начинается с того, что java не допускает "\ v", поэтомуя попытался закодировать символ следующим образом:
byte[] utf8bytes = { (byte)0xE2, (byte)0x90, (byte)0x8B };
Charset utf8charset = Charset.forName("UTF-8");
String string = new String ( utf8bytes, utf8charset );
....
MysqlDataSource DATA_SOURCE = new MysqlDataSource();
PreparedStatement statement = connection.prepareStatement(sql_statement, Statement.RETURN_GENERATED_KEYS);
....
statement.setString(index++, (String) string);
.....
Пока это работает, окончательные данные в самой таблице приводят к «?».
Я также пытался установить кодировку для MysqlDataSource, но в этом случае он не принимает закодированный символ и оператор завершается ошибкой.
try {
DATA_SOURCE.setCharacterEncoding("UTF-8");
} catch (SQLException ex) {
Logger.getLogger(MyClass.class.getName()).log(Level.SEVERE, null, ex);
}
com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect string value: '\xE2\xAD\xBFdat...
Надеюсь, вы поможете мне найти правильный способ вставки вертикальной вкладки в таблицу.