[]
        
首页
开发者学堂
文档
论坛
市场
生态机会
活动
立即试用
(Showing Draft Content)

XlsxOpenOptions

Class XlsxOpenOptions

java.lang.Object
com.grapecity.documents.excel.OpenOptionsBase
com.grapecity.documents.excel.XlsxOpenOptions
Direct Known Subclasses:
XlsmOpenOptions, XltxOpenOptions

public class XlsxOpenOptions extends OpenOptionsBase
表示用于打开 XLSX 文件的选项。

使用此类配置如何通过 Workbook.open(String,OpenOptionsBase) 或其他接受OpenOptionsBase 的打开重载加载工作簿。它支持文件密码、导入标志、加载后的重新计算行为、行自动调整行为和仅数字签名模式等设置。


 XlsxOpenOptions options = new XlsxOpenOptions();
 String password = getWorkbookPassword();
 options.setPassword(password);
 options.setDoNotRecalculateAfterOpened(true);
 workbook.open("path/to/workbook.xlsx", options);
 
  • Constructor Details

    • XlsxOpenOptions

      public XlsxOpenOptions()
      创建用于打开 XLSX 工作簿的新选项对象。

      此构造函数初始化用于OpenFileFormat.Xlsx 格式的 XlsxOpenOptions 实例。在将返回的对象传递给 Workbook.open(String,OpenOptionsBase) 或相关打开重载之前,可使用它配置密码、导入行为、重新计算行为、行自动调整行为或仅数字签名模式等设置。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       String password = getWorkbookPassword();
       options.setPassword(password);
       options.setDoNotRecalculateAfterOpened(true);
       workbook.open("path/to/workbook.xlsx", options);
       
  • Method Details

    • getPassword

      public final String getPassword()
      获取 xlsx 文件的密码。

      在打开受密码保护的 xlsx 文件之前,使用此方法检索在此 XlsxOpenOptions实例上配置的密码。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       String configuredPassword = getWorkbookPassword();
       options.setPassword(configuredPassword);
       String password = options.getPassword();
       workbook.open("path/to/workbook.xlsx", options);
       
      Returns:
      xlsx 文件的密码。
    • setPassword

      public final void setPassword(String value)
      设置 xlsx 文件的密码。

      在打开受密码保护的 xlsx 文件之前,使用此方法可设置此 XlsxOpenOptions 实例上的密码。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       String password = getWorkbookPassword();
       options.setPassword(password);
       workbook.open("path/to/workbook.xlsx", options);
       
      Parameters:
      value - xlsx 文件的密码。
    • getImportFlags

      public final EnumSet<ImportFlags> getImportFlags()
      获取控制加载 .xlsx 工作簿哪些部分的导入标志。

      使用这些选项打开工作簿时会使用返回的标志。默认值为空的 EnumSet,等同于 .NET 值 ImportFlags.NoFlag,表示不应用选择性导入标志而导入工作簿内容。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setImportFlags(EnumSet.of(ImportFlags.Data, ImportFlags.Formulas));
       EnumSet<ImportFlags> importFlags = options.getImportFlags();
       workbook.open("path/to/workbook.xlsx", options);
       
      Returns:
      指定加载工作簿数据所用导入标志的 EnumSet。
    • setImportFlags

      public final void setImportFlags(EnumSet<ImportFlags> value)
      设置控制加载 .xlsx 工作簿哪些部分的导入标志。

      使用这些选项打开工作簿时会使用返回的标志。默认值为空的 EnumSet,等同于 .NET 值 ImportFlags.NoFlag,表示不应用选择性导入标志而导入工作簿内容。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setImportFlags(EnumSet.of(ImportFlags.Data, ImportFlags.Formulas));
       workbook.open("path/to/workbook.xlsx", options);
       
      Parameters:
      value - 指定加载工作簿数据所用导入标志的 EnumSet。
    • getDoNotRecalculateAfterOpened

      public final boolean getDoNotRecalculateAfterOpened()
      获取打开 XLSX 文件后是否跳过将公式标记为 dirty。

      默认值为 false。

      当此属性为 true 时,带有缓存结果的公式在打开后不会被标记为 dirty,因此触发计算时会返回缓存的公式结果。没有缓存结果的公式仍会被标记为 dirty,并在触发计算时重新计算。当此属性为 false 时,公式在打开后会被标记为 dirty,因此触发计算时会重新计算公式结果。可以通过获取公式值或调用 Workbook.calculate() 等操作触发计算。

      
       XlsxOpenOptions openOptions = new XlsxOpenOptions();
       openOptions.setDoNotRecalculateAfterOpened(true);
       boolean doNotRecalculate = openOptions.getDoNotRecalculateAfterOpened();
       workbook.open("source.xlsx", openOptions);
       
      Returns:
      如果打开 XLSX 文件后跳过将公式标记为 dirty,则为 true;否则为 false。
    • setDoNotRecalculateAfterOpened

      public final void setDoNotRecalculateAfterOpened(boolean value)
      设置打开 XLSX 文件后是否跳过将公式标记为 dirty。

      默认值为 false。

      当此属性为 true 时,带有缓存结果的公式在打开后不会被标记为 dirty,因此触发计算时会返回缓存的公式结果。没有缓存结果的公式仍会被标记为 dirty,并在触发计算时重新计算。当此属性为 false 时,公式在打开后会被标记为 dirty,因此触发计算时会重新计算公式结果。可以通过获取公式值或调用 Workbook.calculate() 等操作触发计算。

      
       XlsxOpenOptions openOptions = new XlsxOpenOptions();
       openOptions.setDoNotRecalculateAfterOpened(true);
       workbook.open("source.xlsx", openOptions);
       
      Parameters:
      value - 如果打开 XLSX 文件后跳过将公式标记为 dirty,则为 true;否则为 false。
    • getDigitalSignatureOnly

      public final boolean getDigitalSignatureOnly()
      获取是否以仅数字签名模式打开工作簿。

      在仅数字签名模式下,除非调用 ISignature.delete(),否则会保留现有签名。在此模式下,可以对现有签名行进行签名、添加不可见签名、移除已签名签名行的数字签名或移除不可见签名。其他更改将被丢弃。

      修改数字签名后,请保存工作簿以提交更改。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setDigitalSignatureOnly(true);
       boolean digitalSignatureOnly = options.getDigitalSignatureOnly();
       workbook.open("path/to/workbook.xlsx", options);
       
      Returns:
      如果工作簿配置为以仅数字签名模式打开,则返回 true;否则返回 false。默认值为 false。
    • setDigitalSignatureOnly

      public final void setDigitalSignatureOnly(boolean value)
      设置是否以仅数字签名模式打开工作簿。

      在仅数字签名模式下,除非调用 ISignature.delete(),否则会保留现有签名。在此模式下,可以对现有签名行进行签名、添加不可见签名、移除已签名签名行的数字签名或移除不可见签名。其他更改将被丢弃。

      修改数字签名后,请保存工作簿以提交更改。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setDigitalSignatureOnly(true);
       workbook.open("path/to/workbook.xlsx", options);
       
      Parameters:
      value - 如果工作簿配置为以仅数字签名模式打开,则为 true;否则为 false。默认值为 false。
    • getDoNotAutoFitAfterOpened

      public final boolean getDoNotAutoFitAfterOpened()
      获取加载文件后是否禁用自动调整行高。

      当此属性返回 true 时,打开工作簿后不会自动调整行高。默认值为 false。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setDoNotAutoFitAfterOpened(true);
       boolean doNotAutoFit = options.getDoNotAutoFitAfterOpened();
       workbook.open("path/to/workbook.xlsx", options);
       
      Returns:
      如果加载后禁用自动调整行高,则返回 true;否则返回 false。
    • setDoNotAutoFitAfterOpened

      public final void setDoNotAutoFitAfterOpened(boolean value)
      设置加载文件后是否禁用自动调整行高。

      当此属性设置为 true 时,打开工作簿后不会自动调整行高。默认值为 false。

      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setDoNotAutoFitAfterOpened(true);
       workbook.open("path/to/workbook.xlsx", options);
       
      Parameters:
      value - 如果加载后禁用自动调整行高,则为 true;否则为 false。
    • getInvalidFormulaHandling

      public final InvalidFormulaHandling getInvalidFormulaHandling()
      获取打开工作簿时非法公式的处理方式。 默认值为InvalidFormulaHandling.Throw。
      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setInvalidFormulaHandling(InvalidFormulaHandling.Preserve);
       InvalidFormulaHandling handling = options.getInvalidFormulaHandling();
       
      Returns:
      打开工作簿时非法公式的处理方式。
    • setInvalidFormulaHandling

      public final void setInvalidFormulaHandling(InvalidFormulaHandling value)
      设置打开工作簿时非法公式的处理方式。 默认值为InvalidFormulaHandling.Throw。
      
       XlsxOpenOptions options = new XlsxOpenOptions();
       options.setInvalidFormulaHandling(InvalidFormulaHandling.Preserve);
       InvalidFormulaHandling handling = options.getInvalidFormulaHandling();
       
      Parameters:
      value - 打开工作簿时非法公式的处理方式。