【问题标题】:No data available for encoding 1252 - Xamarin没有可用于编码 1252 的数据 - Xamarin
【发布时间】:2016-10-13 06:20:49
【问题描述】:

我正在使用 Xamarin 开发 Android 应用,同时尝试将文本转换为 byte[] 我收到以下错误:

没有可用于编码 1252 的数据

我的代码:

byte[] mybyteA= Portable.Text.Encoding.UTF8.GetBytes(mystring);

Mono.Security.Cryptography.SHA224Managed sha22 = new _Mono.Security.Cryptography.SHA224Managed();
byte[] hash = sha22.ComputeHash(mybyteA);

【问题讨论】:

  • 这是您的实际代码吗?唯一处理编码的部分是第一行,它使用 UTF-8,而不是 cp1252... 哪一行准确地引发了异常?
  • 哪一行导致错误?您确定要使用 _Mono 命名空间中的任何内容吗?
  • 我应该在调试中添加这个作品,但在第一行(实际编码行)发布失败
  • 即使我使用 system.security,我也会遇到同样的错误。错误在第一行。

标签: c# xamarin


【解决方案1】:

Western Code page (1252) 没有捆绑到您的最终 IPA/APK 中。

对于 iOS 项目,通过在 Project Properties -> iOS Build -> Internationalization 下检查 west 来包含它:

对于 Android 项目,通过检查 Project Properties -> Android Build -> Linker -> 下的 west 来包含它国际化

【讨论】:

    【解决方案2】:

    在 Visual Studio 中,您必须转到每个项目的属性窗口:

    iOS

    你必须向下滚动直到'west'

    安卓

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-19
      • 2018-11-08
      • 1970-01-01
      • 2020-01-22
      • 1970-01-01
      • 2018-01-13
      相关资源
      最近更新 更多