19

私は Cocoa アプリケーションを作成しており、Excel XML 形式 (ISO/IEC 29500-1) にエクスポートしようとしています。これは基本的に、拡張子が付いた一連の XML ファイルを含む zip ファイルです.xlsx

AppleScript を生成し、それを使用NSAppleScriptして Excel ファイルを作成しようとしましたが、これは機能しますが、速度が遅く、ユーザーは自分のマシンに Excel をインストールする必要があります。

Objective C で XML をファイルに書き込んで圧縮し、zip の名前を .xlsx に変更することで、単純な .xlsx Excel ファイルを作成できました.xlsx。Excel はファイルを開くことができましたが、Numbers は私が作成したファイルを開こうとしてエラーをスローしました。Excel は ISO/IEC 仕様のすべて (または大部分) を実装している必要があるようですが、Numbers は Excel 風味のバージョンしか開くことができません。

Cocoa と Objective-c を使用して作業用の Excel ファイルを作成する方法は?

4

3 に答える 3

11

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];
于 2014-02-17T12:56:57.060 に答える
3

私はOpenOffice APIを使用してきましたが、うまく機能しています。それを使用してExcelファイルを作成することをお勧めします。それを行う時間/忍耐がない場合は、回避策として、ファイルをエクスポートするための 2 つのリンクを用意することをお勧めします。世界の Excel 用の XLSX バージョンのハックと、Numbers アプリケーション用の別のエクスポートされた CSV ファイルです。

于 2010-08-30T04:08:00.807 に答える
2

ウィキペディアはライブラリへのリンクをいくつか提供しています

Office Open XML 形式が必須ではなく、過度に複雑なファイルをエクスポートする必要がない場合は、Excel も読み取ることができるスタイルシート形式の HTML としてファイルを保存することをお勧めします。必要な HTML をスプレッドシートとしてフォーマットする方法を学ぶ簡単な方法は、Excel でファイルを作成し、HTML として保存することです。

于 2010-08-30T02:03:37.897 に答える