[]
将实现分配给 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);
voidParse(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);
csvParseResult - 内置解析器生成的解析结果。context - 当前单元格的解析上下文。