Создание файлов Excel (.xlsx) в Какао - PullRequest
19 голосов
/ 27 августа 2010

Я пишу приложение Какао и пытаюсь экспортировать в формат Excel XML (ISO / IEC 29500-1), который в основном представляет собой zip-файл с кучей XML-файлов в нем, названный .xlsxрасширение.

Я попытался сгенерировать AppleScript и использовать NSAppleScript для создания файла Excel, который работает, но работает медленно, и пользователь должен установить Excel на своем компьютере.

Iсмог создать простой файл .xlsx Excel, записав XML в файлы в Objective C, сжав их и переименовав zip в .xlsx.Excel мог открыть файл, но Numbers выдавал ошибку, пытаясь открыть созданный мной файл.Кажется, в Excel должны быть реализованы все (или большинство) спецификаций ISO / IEC, в то время как Numbers может открывать только версию со вкусом Excel.

Как создавать рабочие файлы Excel с использованием Cocoa и Objective-c?

Ответы [ 3 ]

11 голосов
/ 17 февраля 2014

Как насчет инкапсуляции таблицы HTML в файл Excel?Я проверил, что это работает, и я могу открыть его в Excel.

NSURL * documentsDirectory = [NSFileManager.defaultManager URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask].lastObject;
NSURL *file = [documentsDirectory URLByAppendingPathComponent:@"contacts.xls"];
NSString* string = @"<table><tr><td>FOO</td><td>BAR</td></tr></table>";
[string writeToFile:file.path atomically:YES encoding:NSUTF8StringEncoding error:nil];
3 голосов
/ 30 августа 2010

Я работал с OpenOffice API , и он прекрасно работает. Я бы посоветовал вам поработать с этим для создания ваших файлов Excel. Если у вас нет времени и терпения, чтобы сделать это, обходной путь может состоять в том, чтобы иметь 2 ссылки для экспорта файлов, версию XLSX для взлома Excels of the world и затем отдельный экспортированный CSV-файл для приложения Numbers.

2 голосов
/ 30 августа 2010

Википедия предлагает несколько ссылок на библиотеки , которые, вероятно, дадут вам хорошее начало.

Если формат Office Open XML не является обязательным, и вам не нужно слишком многосложные файлы экспортируются, я также предлагаю проверить сохранение файлов в формате HTML в виде таблицы стилей, которые Excel также может читать.Простой способ научиться форматировать нужный HTML-код в виде электронной таблицы - создать файл в Excel и сохранить его в формате HTML.

...