我节省希伯来经文NAMutableArray,然后我将它保存到NSUserDefalts,这种方式:保存希伯来文,以恢复NSUserDefaults的怪编码
numOfWallPosts++;
NSString *tempKeyToStore = [NSString stringWithFormat:@"wall_post_%d", numOfWallPosts]; // wall_post_%d
NSMutableArray *tempArray = [[NSMutableArray alloc] init];
[tempArray addObject:currentOwner];
[tempArray addObject:currentTitle];
[tempArray addObject:currentText];
[tempArray addObject:currentDate];
[tempArray addObject:currentTime];
[tempArray addObject:currentImageURL];
[tempArray addObject:currentWallID];
[self.sharedPrefs setObject:tempArray forKey:tempKeyToStore];
[self.sharedPrefs synchronize];
当我想要得到的希伯来文后,我得到这样的文字这样的:
Wall messages: (
"\U05de\U05e2\U05e8\U05db\U05ea",
"\U05ea\U05e8\U05d2\U05d9\U05dc \U05e4\U05d9\U05e7\U05d5\U05d3 \U05d4\U05e2\U05d5\U05e8\U05e3",
"\U05d0\U05d6\U05e2\U05e7\U05ea \U05ea\U05e8\U05d2\U05d5\U05dc \U05d1\U05e9\U05e2\U05d4 19:05",
"27/05/13",
"13:16",
"http://blabla......",
9
)
我试图在文本格式UTF8String
,并与NSUTF8StringEncoding
,我仍然获取文本这种方式。
我可以以正确的方式保存文本还是将其编码回适当的希伯来文?
编辑: 这是如此奇怪,虽然文字保存奇怪,我把它拉回来,我得到正确的文本。 但是,当我将它们保存到NSUserDefaults,它显示我这种奇怪的编码。
NSString *tempKeyToStore = [NSString stringWithFormat:@"wall_post_%d", indexPath.row];
NSMutableArray *tempArray = [[NSMutableArray alloc] init];
NSLog(@"\n\nWall messages: %@", [self.sharedPrefs objectForKey:tempKeyToStore]);
tempArray = [self.sharedPrefs objectForKey:tempKeyToStore];
NSString *tempOwner = [tempArray objectAtIndex:0];
NSLog(@"\n\nOWNER: %@", tempOwner);
如果我想在nslog中正确显示文本,我需要将文本编码为ascii? –
@IdanMoshe:我只是使用一个循环来NSLog数组中的所有条目。 –