这就是我现在拥有的:
documentData = new NSData (document.String, NSDataBase64DecodingOptions.None);
这确实有效,但似乎NSData使用UTF-8作为输出字符集。但是我需要ISO-8859-1输出字符集中的数据来获得正确的解码。默认设置(UTF-8)失败。
是否有NSData
的选项,或者我必须使用C#将其转换?
编辑:
我可以假设ASCII是ISO-8859-1吗?
public static string Base64Decode(string base64EncodedData) {
if (String.IsNullOrEmpty (base64EncodedData))
return null;
var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);
return System.Text.Encoding.ASCII.GetString(base64EncodedBytes);
}
我认为没有。
我不熟悉NSData,但文档似乎没有表明您可以这样做。
不过,您可以用C#进行转换:
var isoBytes = Convert.FromBase64String(document.String);
var utf8Bytes = Encoding.Convert(Encoding.GetEncoding("iso-8859-1"),
Encoding.UTF8, isoBytes);
看起来您可以从工厂方法初始化NSData
:
var nsData = NSData.FromArray(utf8Bytes);
或者将其转换为base64并使用构造函数:
var base64 = Convert.ToBase64String(utf8Bytes);
var nsData = new NSData(base64, NSDataBase64DecodingOptions.None)
在我的nodeJS应用程序中,我使用以下代码行获取req。身体 这工作正常,但对我的应用程序的一个请求会引发以下错误: 如果删除前一行,则该行适用于该请求,但在所有其他请求中,我无法检索数据。有办法解决这个问题吗?
问题内容: 我正在开发一个项目,我们需要将我们的信息保存在具有ISO-8859-1表的旧数据库中。因此,在向数据库中写入内容之前,我需要将其从UTF-8转换为ISO-8859-1,并且每次从数据库中检索到它时,都需要将其转换回UTF-8。 我试图将库 **code.google.com/p/go-charset/** 用作以下每个我需要保留的文本字段。 问题是即使使用 toISO88591 函数,
问题内容: 我有ISO-8859-1数据库,所以我希望完全在此代码页中交换请求。那么,如何以正确的方式设置AJAX请求的内容类型呢? 问题答案: 即使这样做很不好(上面有很多评论),也可以:
来自java。lang.StringCodeing: 这就是从Java.lang.getBytes()中使用的,在linux jdk 7中,我一直认为UTF-8是默认字符集? 谢啦
问题内容: 我正在iOS(7)的科学方面实现JSON Web令牌认证。运行良好。我的应用程序接收令牌,并可以使用它们对我的服务器进行身份验证的调用。 现在,我希望我的客户端代码检查令牌上的过期日期,以便它可以知道何时重新进行身份验证。检查JWT身份验证令牌上的到期日期很简单。授权令牌是3个base64编码的JSON Blob,由’。’分隔。-过期时间戳记在中间的Blob中,称为。距Unix时代已秒