【发布时间】:2014-04-26 05:51:55
【问题描述】:
我有一个可编辑的 uitextview,用户可以在其中输入俄语或英语。然后我将此文本保存为 files 目录中的 .txt 文件,稍后再阅读。
这里是保存文本的部分
-(IBAction)saveText:(id)sender{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"testing.txt"];
[self.textBox.text writeToFile:path atomically:YES];
NSLog(path);
}
有一个单独的按钮可以在弹出窗口中显示此文本:
-(IBAction)readText:(id)sender{
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"testing.txt"];
NSError *error = nil;
myText = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];
NSLog(@"myText: %@", myText);
self.textBox.text= myText;
}
在 .h 文件中使用此声明
NSString *myText;
如果我只输入英语,它工作得很好,但如果我输入俄语字符,那么什么都不会保存/显示。
所以,假设我输入“你好”它可以工作,但如果我输入“一些俄语短语”来附加 self.textBox.text 它不起作用。
如何使这个俄语(或 UTF8/charcode)兼容?
【问题讨论】:
标签: ios objective-c utf-8 nsstring nsdocumentdirectory