Emailing HTML from within an iPhone app is stopping at special characters

Posted by user141146 on Stack Overflow See other posts from Stack Overflow or by user141146
Published on 2010-04-22T01:58:47Z Indexed on 2010/04/22 2:03 UTC
Read the original article Hit count: 302

Filed under:
|
|
|
|

Hi, I have an iPhone app that will let users email some pre-determined text as HTML.

I'm having a problem in that if the text contains special characters within the text (e.g., ampersand &, >, <), the NSString variable that I use for sending the body of the email gets truncated at the special character.

I'm not sure how to fix this (I tried using the method stringByAddingPercentEscapesUsingEncoding…but this hasn't fixed the problems).

Thoughts on what I'm doing wrong / how to fix it?

Here is sample code showing what I'm trying to do

Thanks!!!

- (void)send_an_email:(id)sender {
    NSString *subject_string    = [NSString stringWithFormat:@"Summary of %@", commercial_name];
    NSString *body_string       = [NSString stringWithFormat:@"%@<br /><br />", [self.dl email_message]]; // email_message returns the body of text that should be shipped as html.  If email_message contains special characters, the text truncates at the special character
    NSString *full_string       = [NSString stringWithFormat:@"mailto:?to=&subject=%@&body=%@", [subject_string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding], [body_string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
    [[UIApplication sharedApplication] openURL:[[NSURL alloc] initWithString:full_string]];
}

© Stack Overflow or respective owner

Related posts about objective-c

Related posts about email