我尝试使用UIActivityViewController共享csv文件 我想通过电子邮件和Telegram等其他应用程序分享 通过Telegram,文件可以正确共享,但使用电子邮件,电子邮件没有附件 另外,csv文件没有扩展名,我应该设置MIME类型吗?怎么样?
@IBAction func shareSheet(sender: AnyObject) {
let firstActivityItem = "Hi, here is the csv file"
//do i really need this? what for?
let secondActivityItem : NSURL = NSURL(string: "http//:urlyouwant")!
let csv : NSData! = NSData(contentsOfFile: NSTemporaryDirectory() + "export.csv")
let activityViewController : UIActivityViewController = UIActivityViewController(
activityItems: [firstActivityItem, secondActivityItem, csv], applicationActivities: nil)
//set the email title
activityViewController.setValue(firstAcxtivityItem, forKey: "subject")
self.presentViewController(activityViewController, animated: true, completion: nil)
}
答案 0 :(得分:1)
这是我用于通过邮件编写器发送CSV的代码
let csvString = "Your CSV String"
let subject = "Subject of your email"
let fileName = "CSV Filename.csv"
let composeVC = MFMailComposeViewController()
composeVC.mailComposeDelegate = self
composeVC.setSubject(subject)
if let csvData = csvString.data(using: String.Encoding.utf8) {
composeVC.addAttachmentData(csvData, mimeType: "text/csv", fileName: fileName)
}
self.present(composeVC, animated: true, completion: nil)