こんにちは、プリペアド ステートメントを使用して値を mysql に挿入しています。
"c2a054656e6e6973c2a0"
値として挿入されている文字列の問題に直面してい" Tennis "
ます。トリムを使用して「テニス」の前の空白をトリムしようとしましたが、機能しませんでした。この質問からなぜトリムが機能しないのですか? ソリューションpoNumber.replace(String.valueOf((char) 160), " ").trim();
を使用してみましたが、うまくいきました。誰でもこれに対する解決策を与えることができますか?
サンプルコード
CREATE TABLE `news1` (
`article_id` int(11) NOT NULL AUTO_INCREMENT,
`article_title` varchar(500) COLLATE utf8_bin NOT NULL,
`article_subcategory` varchar(255) COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`article_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=22 ;
// サンプル カテゴリは「ホーム » テニス」になります
String category = item.getArticle_category();
String categoryArray[] = category.split("»");
preparedStatement = connect
.prepareStatement("INSERT INTO news1 VALUES(default,?,?)");
System.out.println(categoryArray[2].replace(String.valueOf((char) 160), " ")
.trim());
preparedStatement.setString(1, item.getArticle_title());
preparedStatement.setString(2, categoryArray[2]);