我需要生成大型XML文件。所以我创建了这段代码
int n = 6;
NSString *carString = @" \n";
for (int i=1;i<=n;i++){
for (int j=1;j<=n;j++){
if (j!=i){
NSString *carStr = [@""stringByAppendingFormat:@"<car from=\"%i\" to=\"%i\" /> \n",i,j ];
NSLog(@"%@",carStr);
[carString stringByAppendingString:carStr];
}
}
}
NSLog(@"%@",carString);
当NSLog(@"%@",carStr)
给我这样的东西时
<car from="6" to="1" />
NSLog(@"%@",carString)
给我空字符串
为什么呢?你能救我吗?
日Thnx
答案 0 :(得分:3)
[carString stringByAppendingString:carStr];
这会创建一个永远不会使用或读取的新字符串。 尝试:
carString = [carString stringByAppendingString:carStr];
答案 1 :(得分:0)
int n = 6;
NSMutableString *carString = [[NSMutableString alloc] initWithFormat:@" \n"];
for (int i=1;i<=n;i++){
for (int j=1;j<=n;j++){
if (j!=i){
NSString *carStr = [@""stringByAppendingFormat:@"<car from=\"%i\" to=\"%i\" /> \n",i,j ];
NSLog(@"%@",carStr);
[carString appendFormat:carStr];
}
}
}
NSLog(@"%@",carString);
将NSString
替换为NSMutableString
,以便可以轻松添加更多字符串。
希望你能。