我有一个表格,用户可以在其中输入中文/日文字符,然后我将其与声明的值进行比较。问题是即使输入和声明的值相同,它也不相等。
variableA = "官话"
等硬编码变量不等于表单输入文本。打印时显示"官话"
。
甚至它们的长度也不相等! new String("官话").length();
不等于
formInputtedCharacter.length();
,打印时输入的是“官话”(已经是UTF-8)
这怎么可能?
最佳答案
最可能的原因(如果您确定表单数据已正确处理)是 Java 编译器在处理您的文字时使用了错误的编码。确保它使用与您用来编辑源代码的编码相同的编码。
关于java - 中文或日文字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9581496/