2012-07-11 28 views
0

我正在開發一個應用程序,它有點像一個鍵入頁面的筆記本。在iOS中保存並加載多個字符串到UITextView

我有一個UITextView *documentTextint currentPage跟蹤多個頁面。後退和前進按鈕添加1或從currentPage減1,然後他們將documentText中的文本設置爲匹配新值currentPage

但是,當我運行它時,沒有保存,只有一個空白的文本字段。我認爲這是[saveDocs writeToFile:path atomically:YES encoding:NSUnicodeStringEncoding error:NULL]; 的問題,但我不確定要更改什麼,或者甚至是問題所在。

不管怎麼說,這裏是我用來保存文本代碼:

- (IBAction)saveDocs:(id)sender { 

NSString *saveDocs = documentText.text; 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat: @"%@-%d.txt", @"document", currentPage]]; 
[saveDocs writeToFile:path atomically:YES encoding:NSUnicodeStringEncoding error:NULL]; 

[[NSUserDefaults standardUserDefaults] setInteger:currentPage forKey:@"CurrentDocument"]; 


} 

此外,在viewDidLoad中,我使用這個代碼:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                NSUserDomainMask, YES); 

    currentPage = [[NSUserDefaults standardUserDefaults] integerForKey:@"CurrentDocument"]; 

NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString* path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat: @"%@-%d.txt", @"document", currentPage]]; 
NSString* doc = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil]; 

[documentText setText:doc]; 

感謝您的幫助, -Karl

+0

你真的**重新加載**每頁的視圖? – Sirens 2012-07-11 17:26:57

+0

不,我只是重置textView – 2456789 2012-07-11 18:16:58

回答

1

你用NSUnicodeStringEncoding編寫。但是你用NSUTF8StringEncoding閱讀。也許你應該堅持寫作和閱讀NSUTF8StringEncoding。

+0

GAHHHH,這很明顯。我現在感到非常愚蠢。非常感謝!!! :) – 2456789 2012-07-11 18:15:28

相關問題