【问题标题】:Error-invalid length for a base-64 char arraybase-64 字符数组的错误长度无效
【发布时间】:2010-06-01 10:08:25
【问题描述】:

我有 Silverlight 应用程序,可以将一些数据发布到另一个 Web 应用程序,要发布的数据使用代码转换为 base 64

byte[] byteArray = Encoding.UTF8.GetBytes(sDataToPost);
sDataToPost = Convert.ToBase64String(byteArray);

另一个网络应用程序 使用代码获取数据

strText = System.Text.Encoding.ASCII.GetString(System.Convert.FromBase64String(postedData));

但它给出了异常base-64 char 数组的长度无效

提前致谢 DNM

【问题讨论】:

  • 它是否经过编码使其成为无效的 base64 字符串?
  • 欢迎来到 SO,请花几分钟时间阅读常见问题解答和 Markdown 文档(编辑问题时右侧空白处提供了有用的概要)。
  • 请显示您用于发布的代码以及填充postedData 变量的服务器端代码。正如@Michel 指出的那样,可能会发生进一步的编码。另外你为什么用ASCII而不是UTF-8解码?

标签: asp.net silverlight silverlight-3.0


【解决方案1】:

根据您发布数据的方式,Base64 字符串很可能会被更多地修改。例如,URL 编码器可能会对 Base64 字符串中的 + 和 = 符号做一些奇怪的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-24
    • 1970-01-01
    相关资源
    最近更新 更多