0

这就是我实际保存可变数组的方式。

[myMutableArray writeToFile:@"/Users/myUserIdentifier/Desktop/results.plist" atomically:YES]; 

该数组基本上包含许多单词,我希望 Windows 用户能够阅读它们,并且我需要它们为每个单词返回一个新行。

我尝试在每个单词的末尾添加标签,然后将文件保存在 .html 中:

[myMutableArray writeToFile:@"/Users/myUserIdentifier/Desktop/results.html" atomically:YES]; 

实际上该文件是可读的,但太糟糕了,标签的格式如下:

  <br> 

因此 Chrome 不将其理解为“换行”。

好吧,解释得很混乱,希望我能找到一个头脑混乱的灵魂伴侣来理解所有这些东西!

4

3 回答 3

0

您尝试将 NSMutableArray 保存为数组,然后读取但均无效:

 - (void)saveState
{
NSString *filePath = [[NSBundle mainBundle] pathForResource:@\"Layers\" ofType:@\"plist\"];  
NSMutableDictionary* layersDict = [[NSMutableDictionary alloc] initWithContentsOfFile:filePath];

[layersDict setValue:layers forKey:@\"Layers\"];
[layersDict writeToFile:filePath atomically: YES];
}

- (void)loadLastState;
{
NSString *filePath = [[NSBundle mainBundle] pathForResource:@\"Layers\" ofType:@\"plist\"];
NSMutableDictionary* layersDict = [[NSMutableDictionary alloc] initWithContentsOfFile:filePath];

NSArray *layersArray = [layersDict objectForKey:@\"Layers\"];

NSMutableArray *layersMutable = [[NSMutableArray alloc] initWithArray:layersArray];

[self recoverFromLayers:layersMutable];
}
于 2012-09-18T06:28:55.933 回答
0

嗯不是真的。一切正常。我只是想格式化我的结果,以便在启动保存的文件时让 Windows 用户更清楚一些。到目前为止,html 是最好的。但我被那些标签困住了。也许还有另一种简单的方法来获取一个文本文件,其中每个单词都进入下一行。

于 2012-09-18T06:34:51.730 回答
0

您只想将包含字符串的数组写入文件?那时不需要什么花哨的东西。例如:

#import <Foundation/Foundation.h>

int main(int argc, char *argv[]) {
    NSAutoreleasePool *p = [[NSAutoreleasePool alloc] init];
    NSMutableArray *words = [NSMutableArray arrayWithObjects:@"fluffy",@"furball",@"scratcher",nil];
    FILE *filePointer = fopen("/Volumes/Weinberg/Users/alan/Desktop/cats.txt","w");
    [words enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
        fprintf(filePointer,"%s\n",[obj UTF8String]);
    }];
    fclose(filePointer);
    [p release];
}
于 2012-09-18T11:05:38.360 回答