在iPhone中打开Excel(.xls)文件

时间:2013-08-22 18:16:07

标签: c# asp.net iphone excel ssrs-2008

任务:我们需要从C#应用程序发送一封包含excel附件的电子邮件(例如:filename.xls)

问题状态:无法打开从C#应用程序发送的iPhone中的Excel附件。

错误:无法查看文档。文件格式无效。

数据从报表服务器呈现,并使用以下代码写入excel文件:

byte[] bytes = rptAffirmativeTradeReportViewer.ServerReport.Render(format, null, out mimetype, out encoding,out filenameExtension, out streamids, out warnings);
string sfilename = filename.xls
        try
        {
            FileStream fs = File.Create(sFileName);
            fs.Write(bytes, 0, bytes.Length);
            fs.Close();
        }
        catch (Exception ex)
        {
            throw ex;
        }

上面的代码生成一个名为filename.xls的文件,其中包含数据。

然后该文件将附加到outlook并发送给用户。

使用iPhone的用户无法打开Excel并且收到错误。 使用Android的用户可以打开excel文件。

请帮助告诉我们在iPhone中打开此文件需要执行的操作。

1 个答案:

答案 0 :(得分:2)

UIWebView *webView = (UIWebView*)self.view;
self.actualFilePath = filePath;

NSLog(@"File Path %@",filePath);

NSString *mimeType = @"";
if ([fileType caseInsensitiveCompare:@"PDF"]==NSOrderedSame){
mimeType = @"application/pdf";
} else  if ([fileType caseInsensitiveCompare:@"DOC"]==NSOrderedSame){
mimeType = @"application/msword";
} else  if ([fileType caseInsensitiveCompare:@"XLS"]==NSOrderedSame){
mimeType = @"application/vnd.ms-excel";
}

[webView loadData:[NSData dataWithContentsOfFile:filePath] MIMEType:mimeType    textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@"http://www.google.com"]];

希望它有用