.h File
UIAlertView *Alert;
BOOL mail_status;
.m File:
-(void)Generate_CSV
{
NSString *csv_values = [NSString stringWithFormat:@“Names”];
NSString *string_heading =@"Others”;
csv_values = [NSString stringWithFormat:@"%@, ""%@""", csv_values,string_heading];
for (int i=0; i<[Array count]; i++)
{
NSString *str_products = [Array objectAtIndex:i];
str_products = [str_products stringByReplacingOccurrencesOfString:@" " withString:@""];
csv_values = [NSString stringWithFormat:@"%@, ""\n""""%@""", csv_values,str_products];
}
if (mail_status)
{
NSData *csv_data = [csv_values dataUsingEncoding:NSUTF8StringEncoding];
if ( [MFMailComposeViewController canSendMail] )
{
MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
mailComposer.mailComposeDelegate = self;
[mailComposer addAttachmentData:csv_data mimeType:@"text/csv" fileName:@"results.csv"];
[mailComposer setSubject:@"Results CSV File”];
[self presentViewController:mailComposer animated:YES completion:NULL];
}
else
else
{
UIAlertView* alert=[[UIAlertView alloc]initWithTitle:@"No Mail Accounts" message:@"Please set up a Mail account in order to send email." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
}
}
else
{
NSString *file = @"/results.csv";
NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDirectory = [arrayPaths objectAtIndex:0];
NSString *filePaths = [docDirectory stringByAppendingString:file];
[csv_values writeToFile:filePaths atomically:YES encoding:NSUTF8StringEncoding error:nil];
[self open_csv];
}
}
- (void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{
switch (result)
{
case MFMailComposeResultCancelled:
NSLog(@"Mail cancelled");
Alert = [[UIAlertView alloc]initWithTitle:@"Message" message:@"E-Mail Cancelled" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[Alert show];
break;
case MFMailComposeResultSaved:
NSLog(@"Mail saved");
Alert = [[UIAlertView alloc]initWithTitle:@"Message" message:@"E-Mail Saved" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[Alert show];
break;
case MFMailComposeResultSent:
NSLog(@"Mail sent");
Alert = [[UIAlertView alloc]initWithTitle:@"Message" message:@"E-Mail Sent" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[Alert show];
break;
case MFMailComposeResultFailed:
NSLog(@"Mail sent failure: %@", [error localizedDescription]);
Alert = [[UIAlertView alloc]initWithTitle:@"Message" message:@"E-Mail Sending Failed" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[Alert show];
break;
default:
break;
}
// Close the Mail Interface
[self dismissViewControllerAnimated:YES completion:NULL];
}
-(void)open_csv
{
csv_view.hidden = NO;
csv_view.layer.masksToBounds = YES;
//Show the Excel in WebView
NSString *file = @"/results.csv";
NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDirectory = [arrayPaths objectAtIndex:0];
NSString *filePath = [docDirectory stringByAppendingString:file];
if (filePath)
{
NSURL *url=[NSURL fileURLWithPath:filePath];
NSURLRequest *req=[NSURLRequest requestWithURL:url];
[csv_content loadRequest:req]; //csv_content -- WebView
}
}
-(IBAction)csv_close:(id)sender
{
csv_view.hidden = YES;
}
No comments:
Post a Comment