4
很抱歉,如果這是顯而易見的,但我與如何從NSFileWrapper提取成分和docs were not particular enlightening.NSFileWrapper基礎知識:如何提取成分
我有兩個包裝掙扎。一個擁有一個簡單的txt文件。另一個持有pageSettings。 PageSettings是一個NSObject持有幾個NSString的,布爾值將等,這是我的包裝(基於Apple's Document-Based Application Programming Guide for iOS),我現在被困在嘗試再次提取信息:
if (self.fileWrapper == nil) {
self.fileWrapper = [[NSFileWrapper alloc] initDirectoryWithFileWrappers:nil];
}
NSDictionary *fileWrappers = [self.fileWrapper fileWrappers];
if (([fileWrappers objectForKey:@"page"] == nil) && (self.text != nil)) {
NSData *textData = [self.text dataUsingEncoding:NSUTF8StringEncoding];
NSFileWrapper *textFileWrapper = [[NSFileWrapper alloc] initRegularFileWithContents:textData];
[textFileWrapper setPreferredFilename:@"page"];
[self.fileWrapper addFileWrapper:textFileWrapper];
}
if (([fileWrappers objectForKey:@"pageSettings"] == nil) && (self.pageSettings != nil)) {
NSData *settingsData = [NSKeyedArchiver archivedDataWithRootObject:self.pageSettings];
NSFileWrapper *settingsWrapper = [[NSFileWrapper alloc] initRegularFileWithContents:settingsData];
[settingsWrapper setPreferredFilename:@"pageSettings"];
[self.fileWrapper addFileWrapper:settingsWrapper];
}
所以我的問題是如何加載txt文件和pageSettings回self.text和self.pageSettings?
我使用- (NSData *)serializedRepresentation
?如果是這樣,怎麼樣?或者我只是簡單地將其顛倒:
NSDictionary *fileWrappers = [self.fileWrapper fileWrappers];
self.text = [fileWrappers objectForKey:@"page"];
self.pageSettings = [fileWrappers objectForKey:@"pageSettings"];
我會非常感謝任何解釋。非常感謝。
非常感謝您的幫助。現在使用示例代碼很清楚。 –