代码之家  ›  专栏  ›  技术社区  ›  unpollito

为二维码选择字符编码

  •  0
  • unpollito  · 技术社区  · 6 年前

    我正在构建一个能够生成二维码(包括任意文本数据)的应用程序。但是,这提出了一个挑战:我希望用户包括非ASCII字符,如或。

    From what I've gathered 二维码的默认值是iso-8859-1,但utf-8似乎是一个常见的选择(并且接受更广泛的字符范围,例如在iso-8859-1中不会显示的阿拉伯语或希伯来语字符)。

    然而,我所链接的问题并不能回答我的一个重要问题——我能指望大多数现实世界的二维码阅读器(如智能手机或任何常用的二维码读取工具)能够可靠地读取带有UTF-8编码的二维码吗?使用ISO-8859-1是否更安全?或者我应该假设在二维码中包含非ASCII字符会导致失败?

    谢谢!

    1 回复  |  直到 6 年前
        1
  •  1
  •   csvital    6 年前

    我做了一些小调查。首先,我从 this 使用“i§”字符的网站。然后我只需打开我的相机应用程序(iPhone)和Android条形码扫描仪应用程序。他们按预期工作。

    在第二步中,我使用了ISO-8859-1编码来生成二维码,令人惊讶的是,iPhone相机应用程序无法产生任何结果。

    我认为你可以相信UTF-8编码是关于二维码读取的常用工具。