代码之家  ›  专栏  ›  技术社区  ›  Aran Mulholland JohnnyAce

iPhone WriteToFile错误

  •  1
  • Aran Mulholland JohnnyAce  · 技术社区  · 15 年前

    我得到一个“cfDictionaryAddValue():给可变函数的不可变集合0xd5aea0”

    尝试使用以下代码将字符串写入文件时出错

    NSString *xmlString = [NSString stringWithString:xmlData];
    NSError *error = nil;
    if ([xmlString writeToFile:filePath atomically:NO encoding:NSASCIIStringEncoding error:&error])
    

    xmldata是可变字符串,但xmlstring不是。

    有什么想法吗?

    1 回复  |  直到 15 年前
        1
  •  2
  •   stefanB    15 年前

    可可对我很有用。

    NSString * xmlData = @"This is some random string";
    NSString * xmlString = [NSString stringWithString:xmlData];
    NSError * error = nil;
    if (![xmlString writeToFile:@"data.txt"
                     atomically:NO
                       encoding:NSASCIIStringEncoding
                          error:&error])
    {
        NSLog(@"writeToFile failed: %@", error);
    }
    

    我会检查:

    • 如何获取xmldata?它是nsstring吗?
    • 您是否在应用程序包中指定了文件路径?除了文档(?)之外,您将无法在应用程序目录外写入内容。我想。

    这是您在文档目录中指定文件的方式:

    // Documents directory
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                         NSUserDomainMask, YES);
    NSString *documentsPath = [paths objectAtIndex:0];
    
    // <Application Home>/Documents/foo.plist
    NSString *fooPath = [documentsPath stringByAppendingPathComponent:@“foo.plist”];