使用Java处理Excel特殊字符

使用Java处理Excel特殊字符,java,encoding,utf-8,special-characters,Java,Encoding,Utf 8,Special Characters,我有一个表单,允许用户输入长的法律文本。用户可能会从Excel和/或PDF文件进行复制和粘贴。我遇到了一个特殊人物的问题,我把 <%@ page contentType="text/html; charset=UTF-8" pageEncoding="ISO-8859-1" %> 在我的jsp页面的顶部。然而,我在文本中看到了特殊的字符 例如,在Excel文件中有以下说明: “……承租人将向承租人支付……本月的所有租金” “…”正在被翻译成┬a(一个从左到右的波浪线)。我如何

我有一个表单,允许用户输入长的法律文本。用户可能会从Excel和/或PDF文件进行复制和粘贴。我遇到了一个特殊人物的问题,我把

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="ISO-8859-1" %> 

在我的jsp页面的顶部。然而,我在文本中看到了特殊的字符

例如,在Excel文件中有以下说明:

“……承租人将向承租人支付……本月的所有租金”


“…”正在被翻译成┬a(一个从左到右的波浪线)。我如何用Excel中的“…”替换这些特殊字符?

我遇到过类似的问题,人们将Microsoft的“智能引号”复制/粘贴到表单中,并想知道为什么以后不能正确呈现或存储。我使用了相当小且简单的jasciidamnit库从任何输入中清除这些字符

之所以发生这种情况,是因为省略号
“…”
是在单个Unicode字符(u+2026或“…”)处复制的。您应该将pageEncoding设置为UTF-8,因为这就是您要发送的内容。

对我来说,`String text=“…承租人将向承租人支付…所有租金,每月支付一次”;System.out.println(文本);`工作正常。它打印相同的文本。请分享代码,您的阅读和存储/打印情况如何?以下是文件中的部分文本:“……承租人应根据情况向承租人支付……所有租金均按月份支付”开头和后面的点不是句点,而是Excel中的特殊字符。当执行system.println时,结果是├ó┬Ç┬ª是的,我试着将页面编码改为UTF-8,但我仍然得到├ó┬Ç┬ª在我的system.out.println中,然后插入到Oracle CLOB字段中。如果要将其打印到控制台,您将得到这样的结果。控制台不是浏览器,即使发送UTF-8,也只使用ISO-8859。谢谢。我试过这个工具,但它似乎无法处理问题├ó┬Ç┬——来自ExcelHey David,谢谢。这是在我们的测试阶段使用,我还没有听到任何投诉。谢谢你的提示。:-)