如何将java中的unicode字符串转换为ascii字符串?

How to convert unicode string to ascii string in java?

目前 Brenda's 已转换为 Brenda's,但我希望将其转换为 Brenda's。我看到规范器 class 能够从字母中删除重音符号,但我不需要它,我想将 /u2019 转换为撇号。我也希望它能在将来用于其他标点符号。

java 中没有任何东西可以做到这一点,而且一般原理非常复杂;例如,'asciification' 的 ü 到 ASCII 取决于语言,即使您对语言环境有所了解,那也完全没用:

想象一个名叫 Sjögren 的挪威人移居德国,并在那里的某个地方注册了一个以德语和高度关注德国为重点的网站,而您正在构建该网站并希望将其关联起来。你会去:好吧,那变成 Sjoegren。除非那是错误的。

那么有效,你想要的一般来说是不可能的。尽管如此,还是有一个 'best effort' 的想法,例如所有 ö 都转换为 oe,所有 /u2019 都转换为 ' 但据我所知 没有标准转换 table 可用 ,而且它们 asciify [=13] =] 在挪威是 o 但在德国是 oe 强烈暗示这样的事情充其量只是一个猜测(更多是在黑暗中疯狂刺伤),然后表明这样的事情可能不存在完全没有。

当然可以自己写