将NSAttributedString写入Dropbox文件iOS

时间:2014-06-12 14:20:29

标签: ios objective-c dropbox-api

如何将属性字符串写入Dropbox文件?我正在尝试为我的文件创建标题,但我不知道如何更改Dropbox文件中的文本格式。

类似的东西:

    DBPath *newPath = [[DBPath root] childPath:@"hello.txt"];
    DBFile *file = [[DBFilesystem sharedFilesystem] createFile:newPath error:nil];

    UIFont *font = [UIFont fontWithName:@"Palatino-Roman" size:14.0];
    NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:font
                                                                forKey:NSFontAttributeName];

    NSAttributedString *string = [[NSAttributedString alloc] initWithString:@"Title" attributes:attrsDictionary];
    if (file)
        [file writeString:string error:nil];

1 个答案:

答案 0 :(得分:0)

NSAttributedString没有直接读/写文件的方法。但它确实符合NSCoding协议,因此可以将其序列化为文件,代码如下:

[NSkeyedArchiver archiveRootObject: string toFile: myFilePath];

然后再读回来:

NSAttributedString *string = 
  [NSKeyedUnarchiver unarchiveObjectWithFile: myFilePath];

请注意,文件格式不适合与其他平台/应用程序交换样式文本。如果使用NSkeyedArchiver存档属性字符串,则可以对生成的文件执行的唯一操作是使用NSKeyedUnarchiver将其归档;