My application (for Mac) generates some HTML… This HTML then needs to be saved to a .html file. I’m trying to use a NSSavePanel like this:
- (IBAction)saveFile:(id)sender{
NSSavePanel *savePanel = [NSSavePanel savePanel];
[savePanel setRequiredFileType:@"html"];
[savePanel setTitle:@"Save Code to File"];
if ([savePanel runModal] == NSOKButton)
{
[[_codeStore RTFFromRange:
NSMakeRange(0, [[_codeStore string] length])]
writeToURL:[savePanel URL] atomically:YES];
NSLog(@"saved");
}
}
My problem is that this does not save is a plain text. For example, when I open the generated file in a web browser, the html shows up, but
{\rtf1\ansi\ansicpg1252\cocoartf1157\cocoasubrtf700
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural
\f0\fs24 \cf0
is at the top of the page…
The problem looks to be
You’re outputting an RTF document that contains the HTML. You need
This will take the raw NSString from your NSAttributedString
_codeStoreand write that to a file.