OS Xでドキュメントベースのアプリケーションを作成しています。このアプリケーションの機能の1つは、「インポート」機能です。
この関数は、生のBLOBとしてデータを含むデータファイルをディスクから読み取り、1つ以上のドキュメントに解析できます。この機能のために、プログラムでドキュメントを作成する必要があります。主な問題は、既存のデータからドキュメントを作成する方法NSDocumentController
しかないということです。makeDocumentWithContentsOfURL:ofType:error:
ドキュメントを作成する方法はいくつかありますが、どれが最もクリーンな方法か知りたいです。
- ドキュメントのデータをディスク上の個別のファイルに書き込み、
makeDocumentWithContentsOfURL:ofType:error
それぞれに対して:を呼び出すことができます。これはかなりエレガントではないようで、大量のデータでアプリの速度が低下する可能性があります。 - で空のドキュメントを作成し
NSDocumentController
、データを入力することができます。 - import関数でドキュメントを作成
NSDocumentController
し、addDocument:
メソッドを使用してドキュメントをに追加できます。このメソッドはサブクラス化のフックのようであるため、これが機能するかどうかはわかりません。 NSDocumentController
addメソッドをサブクラス化できmakeDocumentFromData:ofType:error:
ます。これはクリーンですが、もっと複雑になると思います。
どう思いますか?
よろしく、クリス