gpt4 book ai didi

iphone - 从 http 响应中的 NSMutableData 中提取数组

转载 作者:行者123 更新时间:2023-12-03 20:48:31 24 4
gpt4 key购买 nike

使用 iPhone SDK 4.0。 http 请求的回调将数据作为 NSData 对象提供

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
// Append the data received to our data
[theData appendData:data];
}

在服务器上的 php 脚本中,我返回一个数组,如下所示

var_dump($array).

如何从 iPhone 上的 NSMutableData 对象“theData”取回数组。

谢谢

最佳答案

您有一个描述数组(或者可能是多个数组?)的字符串,作为字节序列存储在 NSMutableData 对象中。为了将其转回数组,您需要解析 var_dump 输出,这可能很困难。

如果您可以找到一个库(或编写您自己的代码)来以 Apple plist 格式返回数据,您的任务将会容易得多:您可以使用

[NSPropertyListSerialization propertyListFromData:mutabilityOption:format:errorDescription:]

它将 NSData (或 NSMutableData)指针作为其第一个参数。试试http://code.google.com/p/cfpropertylist/为起点。

<小时/>

来自 cfpropertylist 页面的示例代码:

$plist = new CFPropertyList();
$td = new CFTypeDetector();
$guessedStructure = $td->toCFType( $array );
$plist->add( $guessedStructure );
// and then return the plist content with
$plist->toXML()

并在您的 iOS 代码中:

NSString *errorString = nil;
NSArray *array = [[NSPropertyListSerialization
propertyListFromData:theData
mutabilityOption:NSPropertyListImmutable
format:nil
errorDescription:&errorString] retain];

关于iphone - 从 http 响应中的 NSMutableData 中提取数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3401230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com