How to find the text in an NSTextView?
Solution 1
Try
NSString *text = [[myTextView textStorage] string];
The NSTextStorage inherits from NSMutableAttributedString which inherits from NSAttributedString. The latter implements the string method.
This isn't too obvious if you just look at the NSTextView's instance methods in the documentation.
Solution 2
Try this:
[myTextView string];
If you are struggling to write the textView stringValue into a file try something like this:
[[myTextView string] writeToFile:@"someFile" atomically:YES encoding:NSUnicodeStringEncoding error:&error];
Hope this helps!
Solution 3
when setting value, use text.string = @"XXXX";
when getting value, use STRING = [text.string copy];
because if you forget copy, the mutableString
will be deliver to STRING
. This will raise bugs when you editing multiple things with a single textview
.
Related videos on Youtube
Justin
Updated on March 28, 2020Comments
-
Justin about 4 years
I need to find the text in an
NSTextView
, and save it to a file. I can do the saving fine. I have used-stringValue
, and-textStorage
so far, but neither have worked. When I put-stringValue
in, it just gave me (null), and when I put-textStorage
in, it gave me a very large chunk of nothing (like a long paragraph of invisible text).How can I put the text from an
NSTextView
into anNSString
? -
Justin about 13 yearsNothing is happening. I just get an "invisible paragraph". EDIT: I made it do an
NSLog
, and it showed me the right string. The file I saved doesn't show anything but that "large invisible paragraph" that I talked about. What now? -
Justin about 13 yearsI have tried that. I'm starting to think that I made an error somewhere else, but I can't think of anything that could cause this. EDIT: I just did a quick scan and I found the problem. I am saving a lot of different things, and I forgot a "%@" in my
-stringWithFormat
section.