Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Troubles with NSString writeToFile

I have been working on a simple text editor in Cocoa/Objective-C for a practice project, and I have come across an error that I would never have expected.

I have an NSString for my file's contents as well as an NSString for it's path. When I attempt to write the contents to a file, I use the following method:

[FileContents writeToFile: CurrentFileName 
               atomically: NO 
                 encoding: NSStringEncoding /* Error occurs on this line */
                    error: nil];

I've used this method many times without error yet today, I am getting an error:

Expected expression before 'NSStringEncoding'

like image 624
Jesse Dunlap Avatar asked Dec 23 '22 02:12

Jesse Dunlap


2 Answers

NSStringEncoding isn't a valid value. You need to decide what text encoding to use. If you don't know anything about text encodings and these files are only used by your program, I would recommend using NSUTF8StringEncoding everywhere.

UTF-8 has many benefits, including that it is plain ASCII if you don't encounter any non-ASCII characters.

like image 112
Ecton Avatar answered Jan 04 '23 04:01

Ecton


NSStringEncoding is a type, not a value. You need to specify which NSStringEncoding you want (e.g. NSUTF8StringEncoding, NSASCIIStringEncoding and so on).

like image 32
Chuck Avatar answered Jan 04 '23 02:01

Chuck