ios - 如何在 Objective C 中将 NSString 转换为 NSArray

标签 ios objective-c json nsstring nsarray

我需要将 NSString 转换为 NSArray。如果,很少有对象包含双引号,则很少有对象不包含任何内容。

NSString *string = @"["Line", "Operations(UK)", "Operations(USA)", "Total of Invoice", "", "Star", "10040101", "31.Jan.2001", "31.Jan.2001", "", "USD", "1653", "28,145.00", 163.48, "Stock, Ms.Pat", "MGR", "14.Nov.2006", "01-000-2210-0000-000", "V1- New York City", 20343, 5]"; 
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
NSError *error = nil;
NSArray *array = [NSJSONSerialization JSONObjectWithData:data options:nil error:&e]; 

我尝试使用 [, ", ] 等替换字符进行转换,并使用逗号执行“componentsSeparatedByString:”。但它无法正常工作。

最佳答案

如我所见,您正在以正确的方式将 NSString 转换为 NSArray。当你声明一个 NSString 时,你必须使用 \" 而不是 "。它适用于我。

NSString *string = @"[\"Line\", \"Operations(UK)\", \"Operations(USA)\", \"Total of Invoice\", \"\", \"Star\", \"10040101\", \"31.Jan.2001\", \"31.Jan.2001\", \"\", \"USD\", \"1653\", \"28,145.00\", 163.48, \"Stock, Ms.Pat\", \"MGR\", \"14.Nov.2006\", \"01-000-2210-0000-000\", \"V1- New York City\", 20343, 5]";
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
NSError *error = nil;
NSArray *array = [NSJSONSerialization JSONObjectWithData:data options:nil error:&error];

关于ios - 如何在 Objective C 中将 NSString 转换为 NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47284298/

相关文章:

ios - 在 GCD 串行队列上安排和使 NSTimers 失效是否安全?

objective-c - 我应该如何在 ObjC 中为 C 数组编写属性声明?

iphone - 缩放基于 View 的 iOS 应用程序的页面

java - 来自 Api 调用的 Java 中的 Json 建模

java - SubSelectionRequired 类型的验证错误 : Sub selection required for type Timestamp of field

ios - 如何使用 Restkit 0.20.0 创建/发布新的托管对象到服务器?

ios - 如何在 NavigationController 和 UITabbar 上方显示 UIView?

ios - UITextfield 光标移动

c# - 在 JSON web-api 上公开的对象 - 如何阻止属性名称更改大小写?

iOS EventKit 附加谓词