java - 中文或日文字符串比较

标签 java string jsp comparison cjk

我有一个表格,用户可以在其中输入中文/日文字符,然后我将其与声明的值进行比较。问题是即使输入和声明的值相同,它也不相等。

variableA = "官话" 等硬编码变量不等于表单输入文本。打印时显示"官话"

甚至它们的长度也不相等! new String("官话").length();不等于
formInputtedCharacter.length();,打印时输入的是“官话”(已经是UTF-8)

这怎么可能?

最佳答案

最可能的原因(如果您确定表单数据已正确处理)是 Java 编译器在处理您的文字时使用了错误的编码。确保它使用与您用来编辑源代码的编码相同的编码。

关于java - 中文或日文字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9581496/

相关文章:

java - 如何将 scriptlet 更改为 JSTL 显示字符串数组

java - 我无法重新打开 Eclipse 项目

java - 如何处理这个二叉树中的公共(public)/私有(private)对?

javascript - 序列化和反序列化JS对象

java - 在JSP上使用Jquery Ajax在数据表上显示

java - 如何将 String 中的二维数组转换为 int?

c - 这种切换字符串的方式有效吗?有没有效率更高的?

java - 抽象枚举一个注解属性类型

java - 如何用Java绘制ASCII楼梯?

java - 为什么抽象属性在 Runnable 接口(interface)的子类中丢失?