0

我正在尝试使用 php/AJAX 在网页上输出 .txt 文件的内容,这适用于其中没有特殊字符的 .txt 文件。但是当 .txt 文件包含诸如字母重音符号之类的字符时,例如,对文件内容的 AJAX 请求返回 null。

根据我运行的测试,我认为问题源于从 word 文档中复制和粘贴 .txt 文件的内容。

例如,如果您从 Word 文档中复制一个撇号并通过记事本将其粘贴到 .txt 中,则与将撇号直接输入到记事本 .txt 文件中的情况不同。

我的客户目前将 .txt 文件上传到他服务器上的某个文件夹,并通过从 word 复制和粘贴来创建他的内容。有没有办法解决这个问题,以便可以读取这些“复制和粘贴”的特殊字符?

格式差异示例:

从 word 中复制- 戴夫的

直接输入- 戴夫的

你看到撇号的不同了吗?

4

3 回答 3

0

这些被称为智能报价。您可以按照此处的指南在 Word 选项中更改它们。这将是最好的选择,因为它在源头定义了您的预期输出。如果这不是一个选项,即一次有数千个 Word 文件,那么后处理就是要走的路。这可以通过查找字符的 HTML 实体并使用查找和替换功能来完成。我建议使用 PHP 打开文本文件,使用该str_replace()函数查找和替换所有出现的不需要/无法显示的字符,这些字符本身可以在数组等中定义。

于 2013-04-29T13:44:06.593 回答
0

在回显之前可以htmlspecialchars()对包含文本文件的变量做些什么?

这应该将任何特殊字符转换为 HTML 实体,并且应该可以在网页上查看。

于 2013-04-29T13:40:50.073 回答
0

好的))

  1. do not use notepad, ever
  2. save all the files with the utf8 encoding

就这样,问题解决了

于 2013-04-29T13:43:25.637 回答