いくつかの解析ライブラリを見つけましたが、それらは python または perl を使用して作成されています。Objective-C に翻訳しようとしましたが、Objective-C を含む私のスキルのためにそれを行うことができませんでした。
https://github.com/staale/python-xlsx
https://github.com/typester/Data-XLSX-Parser
パーサーを作成するためのヒントがあれば、共有してください。ありがとう
問題を修正しました
- .xlsx ファイルを解凍します。
- xl/workbook.xml を解析してシートの名前を取得します。
- xl/sharedStrings.xml を解析して文字列を取得します。
- xl/worksheets/sheetXXX.xml を解析して、セルの位置と値を取得します。
「ZipArchive」を使用していますが、非推奨エラーなどの警告が表示されました。
私は NSXMLParser を使用していますが、SAX パーサーを使用することが最善の方法であるかどうかはわかりません。解析には 3 つの方法のみを使用します。
- -(BOOL)解析;
- -(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName 名前空間URI:(NSString *)namespaceURI 修飾名:(NSString *)qName 属性:(NSDictionary *)attributeDict
- -(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)文字列