[NSString writeToFile atomically encoding error]
Writes the contents of the receiver to a file at a given path using a given encoding.
- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error
Parameters of [NSString writeToFile atomically encoding error]
- path
- The file to which to write the receiver. If path contains a tilde (
~) character, you must expand it withstringByExpandingTildeInPathbefore invoking this method. - useAuxiliaryFile
- enc
- The encoding to use for the output.
- error
- If there is an error, upon return contains an
NSErrorobject that describes the problem. If you are not interested in details of errors, you may pass inNULL.
Return Value
YES if the file is written successfully, otherwise NO (if there was a problem writing to the file or with the encoding).Discussion of [NSString writeToFile atomically encoding error]
This method overwrites any existing file at path.
This method stores the specified encoding with the file in an extended attribute under the name
com.apple.TextEncoding. The value contains the IANA name for the encoding and the CFStringEncoding value for the encoding, separated by a semicolon. The CFStringEncoding value is written as an ASCII string containing an unsigned 32-bit decimal integer and is not terminated by a null character. One or both of these values may be missing. Examples of the value written include the following:[NSString writeToFile atomically encoding error]MACINTOSH;0
|
UTF-8;134217984
|
UTF-8;
|
;3071
|
The methods
initWithContentsOfFile:usedEncoding:error:,initWithContentsOfURL:usedEncoding:error:,stringWithContentsOfFile:usedEncoding:error:, andstringWithContentsOfURL:usedEncoding:error: use this information to open the file using the right encoding.
[NSString writeToFile atomically encoding error] example
NSError *error = nil;
BOOL ok = [hello_world writeToFile:filePath atomically:YES
encoding:NSASCIIStringEncoding error:&error];
if (error) {
NSLog(@"Fail: %@", [error localizedDescription]);
}
[NSString writeToFile atomically encoding error] example
NSString * xmlData = @"This is some random string";
NSString * xmlString = [NSString stringWithString:xmlData];
NSError * error = nil;
if (![xmlString writeToFile:@"data.txt"
atomically:NO
encoding:NSASCIIStringEncoding
error:&error])
{
NSLog(@"writeToFile failed: %@", error);
}
[NSString writeToFile atomically encoding error] example
NSString *zStr = [aString stringValue];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *directory = [paths objectAtIndex:0];
NSString *fileName = @"data.txt";
NSString *filePath = [directory stringByAppendingPathComponent:fileName];
[zStr writeToFile:filePath atomically:YES encoding:NSASCIIStringEncoding error:nil];