我有一个数组,我正在使用:
将其写入文件memoryString=[memoryString stringByAppendingString:WhatsTheTimeNow];
[memoryFile addObject:memoryString];
[memoryFile writeToFile:fullFileName atomically:NO];
日志没问题,但是我在日志文件上得到的还有一些符号:
<?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">
<array>
<string> Touch Event: leftEye --- ר10 10:33:10---2011</string>
<string> Sensor Event: rightHand --- א10 10:33:26---2011</string>
<string> Sensor Event: rightHand --- ר10 10:33:29---2011</string>
<string> Sensor Event: rightLeg --- א10 10:33:32---2011</string>
<string> Touch Event: leftEye --- ר10 10:33:34---2011</string>
<string> Touch Event: leftEye --- א10 10:33:36---2011</string>
</array>
</plist>
问题是,我不希望在开头和结尾有<string>
,<array>
个符号,以及3个开放行。
我怎么摆脱这个符号?
非常感谢。
答案 0 :(得分:2)
这些“符号”使您的文件成为.plist
,这是您在writeToFile:
上致电NSArray
时创建的内容。如果你想要一个自定义输出(你将无法使用标准功能读回数组),你必须自己编写,可能使用NSString
的{{1}}方法代替。
答案 1 :(得分:2)
writeToFile
方法会自动生成一个.plist
,非常方便您重新阅读。如果您想自己动手,
NSMutableString *file = [NSMutableString string];
for (NSString *s in memoryFile) {
[file appendFormat:@"%@\n", s];
}
[memoryFile writeToFile:fullFileName atomically:NO
encoding:NSUTF8StringEncoding error:nil];
请注意,writeToFile:atomically:
已弃用。
您的奇怪角色必须源于memoryString
的分配问题。