[]
当导入导出Excel文件(.xlsx)时, 可能需要有差异化的方式导入或导出内容。比如,有时用户只需要数据,或者在某些时候,需要跳过公式等等。 GcExcel Java 提供了各种各样的导入导出选项,可以让用户选择保留或者跳过内容。这些选项在处理包含大量工作表、公式或者图形的大型Excel文件时,特别有用。 GcExcel Java 提供了以下方法来导入导出.xlsx文件。
类名 | 方法名 | 描述 | |
---|---|---|---|
导入选项 | getDoNotAutoFitAfterOpened | 指定是否在打开 Excel 文件时自动调整行高。 | |
getDoNotRecalculateAfterOpened | 指定是否在打开 excel 文件后重新计算公式值。 | ||
getImport Flags | 提供各种标志来导入工作表中各个部分. 更多信息,请参考 使用导入标志部分的内容。 | ||
导出选项 | setIgnoreFormulas | 导出到Excel时,把GcExcel工作表中的公式单元格导出成值单元格。 | |
setExcludeUnusedStyles | 导出时,忽略没有用到的样式。 | ||
setExcludeUnusedNames | 导出时,忽略没有用的名字。 | ||
setExcludeEmptyRegionCells | 导出时,忽略空单元格。空单元格指,使用范围之外的单元格,有样式但不包含数据。 |
GcExcel Java 还提供了对在执行 Excel文件的导入和导出操作时保留日语注音字符的支持。此外,用户可以在执行其他电子表格任务 (如插入、删除、复制、剪切、合并、清除、排序等)之后,以极高的精确度调整包含日语注音字符的单元格。
在打开工作簿时,GcExcel Java提供了一些打开选项,用来控制打开操作。
ImportFlags 枚举类型如下表所示,可以允许用户以特定方式打开工作簿。
Import Flag 选项 | 描述 |
---|---|
NoFlag | 使用"No option"表示在打开Excel文件时,将工作表中的所有数据都会按原样导入,当你不想设置导入标志打开Excel文件的时候是用这个选项。 |
Data | 使用"Read the Data"表示在打开Excel文件时,仅将工作表中的数据导入 。 |
Formulas | 使用"Read the Data and Formulas"表示在打开Excel文件时,同时导入工作表中的数据和公式。 |
Table | 使用"Read the Tables"表示在打开Excel文件时,仅将工作表中的表格导入。 |
MergeArea | 使用"Read the Merge Cells"表示在打开Excel文件时,仅将工作表中的合并单元格和跨区单元格导入。 |
Style | 使用"Read the Styles"表示在打开Excel文件时,仅将工作表中应用在单元格上的样式导入。 |
ConditionalFormatting | 使用"Read the Conditional Formatting"表示在打开Excel文件时,仅将工作表中应用的条件格式规则导入。 |
DataValidation | 使用"Read the Data Validation"表示在打开Excel文件时,仅将工作表中应用的数据验证规则导入。 |
PivotTable | 使用"Read the Pivot Tables"表示在打开Excel文件时,仅将工作表中的数据透视表导入。 |
Shapes | 使用"Read all the Shapes"表示在打开Excel文件时,仅将工作表中嵌入的图形导入。 |
参考下面的代码示例,通过使用导入导出选项来操作打开和保存 .xlsx 文档:
// Create workbook and access its first worksheet
Workbook workbook = new Workbook();
IWorksheet worksheet = workbook.getWorksheets().get(0);
// Assigning value to range
worksheet.getRange("A3").setValue(5);
worksheet.getRange("A2").setValue(5);
worksheet.getRange("A1").setValue(5);
worksheet.getRange("B1").setValue(5);
// Exporting .xlsx document
workbook.save("savingfile.xlsx", SaveFileFormat.Xlsx);
// Exporting .xlsx document while setting password
XlsxSaveOptions options = new XlsxSaveOptions();
options.setPassword("Pwd");
workbook.save("savingfile.xlsx", options);
// Exporting .xlsx document by ignoring cell formulas
workbook.getActiveSheet().getRange("A4").setFormula("=Sum(A1+A2+A3)");
XlsxSaveOptions options2 = new XlsxSaveOptions();
options2.setIgnoreFormulas(true);
workbook.save("ignoreformulas.xlsx", options2);
// Importing .xlsx document
workbook.open("Source.xlsx", OpenFileFormat.Xlsx);
// Importing .xlsx document with Open options
// Import only data from .xlsx document.
XlsxOpenOptions options3 = new XlsxOpenOptions();
options3.setImportFlags(EnumSet.of(ImportFlags.Data));
workbook.open("Source.xlsx", options3);
// Don't recalculate after opened.
XlsxOpenOptions options1 = new XlsxOpenOptions();
options1.setDoNotRecalculateAfterOpened(true);
workbook.open("Source.xlsx", options1);
同时, 你也可以导入导出 .xlsm 和 .xltx 文件。