代码之家  ›  专栏  ›  技术社区  ›  Dan Berlyoung

ISO-8859-1和Macroman编码

  •  0
  • Dan Berlyoung  · 技术社区  · 14 年前

    我有一个MySQL数据库表,其中有一个包含用户名的ISO-8859-1编码文本字段。当我使用PHP将其导出到文本文件时,我得到一个保存在客户机上的普通文本文件。当我在Windows系统的Word或Excel中打开它时,它看起来很好。当我使用Word或Excel在Mac上打开它时,高ASCII字符是错误的。

    我知道这是因为Mac使用Macroman,Windows使用ISO-8859-1。我的问题是,如何编写一个文本文件,它将在两个平台上都打开,并且在两个平台上看起来都不错?

    是否有一些XML差异,我可以将文本包装起来,将单词提示为它的ISO-8859-1编码的事实?我可以在一个txt文件上撒些什么魔法灰尘来提示操作系统它正在使用另一种编码方案?

    1 回复  |  直到 14 年前
        1
  •  2
  •   leonbloy    14 年前

    …我在客户机上保存了一个普通的文本文件

    你实际上得到了一个特定编码的文本。假设它是ISO-8859-1。

    我知道这是因为Mac使用Macroman,Windows使用ISO-8859-1。我的问题是,如何编写一个文本文件,它将在两个平台上都打开,并且在两个平台上看起来都不错?

    打开文本文档的软件必须知道字符集编码。有时,它可以使用一些试探法来猜测,有时它不会尝试猜测(并使用它自己的默认值),有时您可以让他问您要使用什么编码。 See here .

    只要我们说的是纯文本文件,就没有通用的方法可以保证每个用户都能以正确的编码打开它。在某些其他格式(如HTML)中,可以将编码指定为文档本身的一部分。