从microsoft word在utf8中存储字符串

时间:2013-06-24 21:48:11

标签: utf-8 ms-word character pasting

我正在开发一个允许企业存储描述的网站。我目前遇到的问题是从Microsoft Word复制和粘贴文本,以及返回字符串的其他几个地方,但不是原始字符。我对utf8的工作方式没有最好的理解,但我认为应该处理这个问题。

我的问题是这个。我认为utf8会处理字符中的字符是错误的。如果是这样,完成此任务的正确方法是什么?

  • 我们有

    <?xml version="1.0" encoding="UTF-8"?>
    

    位于每页的顶部。

  • 使用spring作为我们的框架Jave后端
  • ibatis处理sql注入
  • 和db的mysql

字符在进入数据库时​​被更改,并被保存为不同的字符。我做了大量的搜索,并没有得出一个好结论,为什么他们被改变。切换的一些示例字符是:
从单词
- 改为 来自客户网站
'到' '到'

我想这样做,以便他们几乎可以在任何地方进行复制,并且可以正确格式化。你会怎么建议我那样做?

解决!! 该问题最终成为我的web.xml配置的问题。我没有强迫网络使用spring的utf8配置。解决方案(如果使用弹簧)如下:

问题最终成为spring的配置问题。谢谢你的帮助。
Spring配置:

`<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>`

1 个答案:

答案 0 :(得分:0)

如果您使用UTF8将文本转换为字节,然后使用单字节ASCII编码读取字节,则会发生这种情况。

您需要找出代码中发生的位置,并修复它以将字节读取为UTF8。