是否有更好的方法来摆脱重音并使这些字母与使用String.replaceAll()方法和逐个替换字母分开?例:
输入: or?pžsíáýd
输出: orcpzsiayd
它不需要包括所有带有重音符号的字母,如俄语字母或中文字母.
目前,我需要过滤Cursor/CursorAdapter,以仅显示与ListView中的特定条件匹配的行.我不想一直重新查询数据库.我只想过滤查询数据库时得到的光标.
我已经看到了这样一个问题:从Cursor中过滤行,这样它们就不会出现在ListView中
但我不明白如何通过覆盖我的CursorWrapper中的"移动"方法来进行过滤.一个例子很好.
非常感谢你.
我在网站上有一个文本区域,用户可以在其中编写任何内容.当用户复制粘贴某些文本或包含非UTF 8字符的内容并将其提交给服务器时,会出现问题.
Java成功处理它,因为它支持UTF-16,但我的mySql表支持UTF-8,因此插入失败.
我试图在业务逻辑本身中实现某种方式,删除任何不适合UTF-8编码的字符.
目前我正在使用此代码:
new String(java.nio.charset.Charset.forName("UTF-8").encode(myString).array());
Run Code Online (Sandbox Code Playgroud)
但它用其他一些不起眼的字符替换不适合UTF-8的字符.这对最终用户来说也不好看.请问有人可以使用Java代码解决任何可能的解决方案吗?
编辑:例如,插入这些值时我得到的异常
java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x8A\x0D\x0A...' for column
java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x80\xF0\x9F...' for column
Run Code Online (Sandbox Code Playgroud) 我有以下示例代码:
String n = "Péña";
n = Normalizer.normalize(n, Normalizer.Form.NFC);
Run Code Online (Sandbox Code Playgroud)
如何标准化n除以外的字符串ñ?
而且不仅是该字符串,我还在制作表单,并且我希望保留ñ's,以及其他所有没有变音符号的内容。