gpt4 book ai didi

iphone - 从plist创建NSArray

转载 作者:行者123 更新时间:2023-12-01 18:33:09 25 4
gpt4 key购买 nike

我试图从一个plist创建一个NSArray,但是由于某种原因,该数组从未初始化。

继承人的代码-

NSString * path = [[NSBundle mainBundle] pathForResource:@"defaultWorkouts2" ofType:@"plist"];

NSLog(@" ------ %@", path);

NSArray * defaultWorkouts = [[NSArray alloc] initWithContentsOfFile:path];

NSLog(@" ------ %@", defaultWorkouts);

继承人控制台输出-
2011-04-24 16:17:26.732 IntervalTimer[9778:207] ------ file://localhost/Users/darrenfindlay/Library/Application%20Support/iPhone%20Simulator/4.3/Applications/8FAC4993-D1BA-460F-9A56-8A6984CB8AB6/IntervalTimer.app/defaultWorkouts.plist
2011-04-24 16:17:26.733 IntervalTimer[9778:207] ------ (null))

这是plist文件-
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Boxing</key>
<array>
<integer>8</integer>
<string>Sparring</string>
<array>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
</array>
<array>
<string>Round 1</string>
<string>Rest, Round 2 next</string>
<string>Round 2</string>
<string>Rest, Round 3 next</string>
<string>Round 3</string>
<string>Rest, Round 4 next</string>
<string>Round 4</string>
<string>Rest, Round 5 next</string>
<string>Round 5</string>
<string>Rest, Round 6 next</string>
<string>Round 6</string>
<string>Rest, Round 7 next</string>
<string>Round 7</string>
<string>Rest, Round 8 next</string>
<string>Round 8</string>
</array>
</array>
<key>Boxing - 2</key>
<array>
<integer>8</integer>
<string>Sparring</string>
<array>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
</array>
<array>
<string>Round 1</string>
<string>Rest, Round 2 next</string>
<string>Round 2</string>
<string>Rest, Round 3 next</string>
<string>Round 3</string>
<string>Rest, Round 4 next</string>
<string>Round 4</string>
<string>Rest, Round 5 next</string>
<string>Round 5</string>
<string>Rest, Round 6 next</string>
<string>Round 6</string>
<string>Rest, Round 7 next</string>
<string>Round 7</string>
<string>Rest, Round 8 next</string>
<string>Round 8</string>
</array>
</array>
<key>Boxing - 3</key>
<array>
<integer>8</integer>
<string>Sparring</string>
<array>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
<integer>60</integer>
<integer>150</integer>
</array>
<array>
<string>Round 1</string>
<string>Rest, Round 2 next</string>
<string>Round 2</string>
<string>Rest, Round 3 next</string>
<string>Round 3</string>
<string>Rest, Round 4 next</string>
<string>Round 4</string>
<string>Rest, Round 5 next</string>
<string>Round 5</string>
<string>Rest, Round 6 next</string>
<string>Round 6</string>
<string>Rest, Round 7 next</string>
<string>Round 7</string>
<string>Rest, Round 8 next</string>
<string>Round 8</string>
</array>
</array>
</dict>
</plist>

在此先感谢您的帮助,这使我发疯。

最佳答案

如果您查看plist文件,则该文件包含的是NSDictionary而不是NSArray。您应该将实现更改为:

NSDictionary * defaultWorkouts = [[NSDictionary alloc] initWithContentsOfFile:path];

关于iphone - 从plist创建NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5771246/

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