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

ICsvParser

Interface ICsvParser


public interface ICsvParser
表示自定义 CSV 解析器。

将实现分配给 CsvOpenOptions.setParser(ICsvParser),可以检查每个已解析的 CSV 单元格,并可选择修改解析后的值或数字格式。


 CsvOpenOptions options = new CsvOpenOptions();
 ICsvParser parser = new ICsvParser() {
     public void Parse(CsvParseResult result, CsvParseContext context) {
         if (context.getText().startsWith("00")) {
             result.setValue(context.getText());
         }
     }
 };
 options.setParser(parser);
 workbook.open("path/to/source.csv", options);
 
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Parse(CsvParseResult csvParseResult, CsvParseContext context)
    解析单元格文本,并允许检查或修改内置解析器生成的结果。
  • Method Details

    • Parse

      void Parse(CsvParseResult csvParseResult, CsvParseContext context)
      解析单元格文本,并允许检查或修改内置解析器生成的结果。

      使用 CsvParseContext.getText() 可以检查原始 CSV 文本,使用 CsvParseResult.setValue(Object) 或 CsvParseResult.setNumberFormat(String) 可以自定义导入的值。

      
       ICsvParser parser = new ICsvParser() {
           public void Parse(CsvParseResult result, CsvParseContext context) {
               if (context.getText().endsWith("%")) {
                   String text = context.getText().replace("%", "");
                   result.setValue(Double.parseDouble(text) / 100);
                   result.setNumberFormat("0%");
               }
           }
       };
       CsvOpenOptions options = new CsvOpenOptions();
       options.setParser(parser);
       workbook.open("path/to/percentage.csv", options);
       
      Parameters:
      csvParseResult - 内置解析器生成的解析结果。
      context - 当前单元格的解析上下文。