我需要找到NSTextView
中的文本,并将其保存到文件中。我可以保存好。到目前为止,我已经使用-stringValue
和-textStorage
,但都没有工作。当我放入-stringValue
时,它只给了我(null),当我放入-textStorage
时,它给了我一大堆没有任何东西的东西(比如一段看不见的文字)。如何在NSTextView中查找文本?
如何将NSTextView
的文本转换为NSString
?
我需要找到NSTextView
中的文本,并将其保存到文件中。我可以保存好。到目前为止,我已经使用-stringValue
和-textStorage
,但都没有工作。当我放入-stringValue
时,它只给了我(null),当我放入-textStorage
时,它给了我一大堆没有任何东西的东西(比如一段看不见的文字)。如何在NSTextView中查找文本?
如何将NSTextView
的文本转换为NSString
?
尝试
NSString *text = [[myTextView textStorage] string];
的NSTextStorage从NSMutableAttributedString从NSAttributedString继承继承。后者实现了string方法。
如果您只是在文档中查看NSTextView的实例方法,这并不太明显。
试试这个:
[myTextView string];
如果你正在努力TextView的stringValue的写入文件尝试是这样的:
[[myTextView string] writeToFile:@"someFile" atomically:YES encoding:NSUnicodeStringEncoding error:&error];
希望这有助于!
我已经尝试过。我开始认为我在其他地方犯了一个错误,但我想不出任何可能导致这种情况的事情。编辑:我只是做了一个快速扫描,我发现了这个问题。我保存了很多不同的东西,并且在我的'-stringWithFormat'部分中忘记了一个“%@”。 – Justin 2011-04-03 23:19:44
为了编译这个问题的其他人的所有信息,我回答了我自己的问题。如果我不被允许这样做,请告诉我。
该代码实际上非常简单。
Files.h
#import <Cocoa/Cocoa.h>
@interface Files : NSObject {
IBOutlet id dataToSave;
}
- (IBAction) saveData: (id) sender;
Files.m
@implementation Files
- (IBAction) saveData: (id) sender; {
NSString *text = [[dataToSave textStorage] string];
NSLog(@"%@", text);
[text writeToFile:@"Users/justin/Desktop/test.txt atomically:YES encoding:NSUTF8StringEncoding error:NULL];
}
相反投票这件事,投票给回答了这个其他两个人。
设定值时,使用text.string = @"XXXX";
获得价值时,使用STRING = [text.string copy];
,因为如果你忘记复印件,mutableString
将被交付给STRING
。当你用一个textview
编辑多个东西时,这会引发错误。
什么都没有发生。我只是得到一个“隐形段落”。编辑:我做了一个'NSLog',它显示了正确的字符串。我保存的文件没有显示任何内容,只是我提到的那个“大型隐形段落”。现在怎么办? – Justin 2011-04-03 21:25:58
如何进入磁盘?你是否尝试过使用utf8编码? – 2011-04-03 21:40:41
是的,我试过编码utf8。 – Justin 2011-04-03 23:18:55