2013-07-24 2 views
3

Есть ли способ создать файл Excel программно в iOS?Создать .xls файл программно

+0

Умм, BLOCKQUOTE? –

+0

Нет ответа, но тот же вопрос: http://stackoverflow.com/questions/15269767/how-to-create-a-custom-xls-file-programatically?rq=1 и http://stackoverflow.com/questions/ 10818207/create-excel-xls-files-on-ios и http://stackoverflow.com/questions/11535772/iphone-sdk-export-data-to-xls-not-via-csv?lq=1 – Thilo

ответ

2

Это полоса вниз версия представления XML в XLS-файла , Просто создайте необработанный XML, подобный этому ... и сохраните его как XLS.

<?xml version="1.0"?> 
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:x="urn:schemas-microsoft-com:office:excel" 
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" 
xmlns:html="http://www.w3.org/TR/REC-html40"> 
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> 
    <Version>14.0</Version> 
</DocumentProperties> 
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"> 
    <AllowPNG/> 
</OfficeDocumentSettings> 
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> 
    <WindowHeight>11720</WindowHeight> 
    <WindowWidth>25600</WindowWidth> 
    <WindowTopX>0</WindowTopX> 
    <WindowTopY>0</WindowTopY> 
    <TabRatio>600</TabRatio> 
    <ProtectStructure>False</ProtectStructure> 
    <ProtectWindows>False</ProtectWindows> 
</ExcelWorkbook> 
<Styles> 
    <Style ss:ID="Default" ss:Name="Normal"> 
    <Alignment ss:Vertical="Bottom"/> 
    <Borders/> 
    <Font ss:Color="#000000"/> 
    <NumberFormat/> 
    </Style> 
    <Style ss:ID="s62"> 
    <Interior/> 
    <Protection/> 
    </Style> 
    <Style ss:ID="s63"> 
    <Interior ss:Color="#C0C0C0" ss:Pattern="Solid"/> 
    <Protection/> 
    </Style> 
</Styles> 
<Worksheet ss:Name="Apple Inc"> 
    <Table x:FullColumns="1" 
    x:FullRows="1" ss:StyleID="s62" ss:DefaultColumnWidth="53" 
    ss:DefaultRowHeight="12"> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="90"/> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="180"/> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="60" ss:Span="5"/> 
    <Column ss:Index="9" ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="48"/> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="60"/> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="48"/> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="90" ss:Span="1"/> 
    <Column ss:Index="14" ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="300"/> 
    <Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="55" ss:Span="1"/> 
    <Row ss:AutoFitHeight="0" ss:Height="20"> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Room</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Description</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">level</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">level</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">level</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">level</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Date</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Audit</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Risk</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Value</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Score</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">ScoreName</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Action</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Comments</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Test</Data></Cell> 
    <Cell ss:StyleID="s63"><Data ss:Type="String">Test</Data></Cell> 
    </Row> 
    <Row> 
     <Cell><Data ss:Type="Number">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="Number">data value</Data></Cell> 
     <Cell><Data ss:Type="Number">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">data value</Data></Cell> 
     <Cell><Data ss:Type="String">Vau</Data></Cell> 
     <Cell><Data ss:Type="String">Test</Data></Cell> 
    </Row> 
</Table> 
    <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> 
    <PageSetup> 
    <Header x:Margin="0.3"/> 
    <Footer x:Margin="0.3"/> 
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> 
    </PageSetup> 
    <Unsynced/> 
    <Print> 
    <ValidPrinterInfo/> 
    <HorizontalResolution>600</HorizontalResolution> 
    <VerticalResolution>600</VerticalResolution> 
    </Print> 
    <PageLayoutZoom>0</PageLayoutZoom> 
    <Selected/> 
    <Panes> 
    <Pane> 
    <Number>3</Number> 
    <ActiveRow>15</ActiveRow> 
    <ActiveCol>13</ActiveCol> 
    </Pane> 
    </Panes> 
    <ProtectObjects>False</ProtectObjects> 
    <ProtectScenarios>False</ProtectScenarios> 
    <AllowFormatCells/> 
    <AllowSizeCols/> 
    <AllowSizeRows/> 
    <AllowInsertCols/> 
    <AllowInsertRows/> 
    <AllowInsertHyperlinks/> 
    <AllowDeleteCols/> 
    <AllowDeleteRows/> 
    <AllowSort/> 
    <AllowFilter/> 
    <AllowUsePivotTables/> 
    </WorksheetOptions> 
</Worksheet> 
</Workbook> 

Вы сможете создавать различные стили тоже

<Style ss:ID="s63"> 
    <Interior ss:Color="#C0C0C0" ss:Pattern="Solid"/> 
    <Protection/> 
    </Style> 
+0

Вы действительно хотите, чтобы кто-то написал библиотеку для обработки этого, хотя ... – Thilo

+0

@Thilo, согласился! – doNotCheckMyBlog

Смежные вопросы