gpt4 book ai didi

java - Apache POI - 文本长度限制为 8 或 10

转载 作者:行者123 更新时间:2023-12-02 12:12:15 26 4
gpt4 key购买 nike

我想向列添加以下约束:

  1. 文本长度应为 8 或 10

  2. 所有数字都应该是数字,但列的类型是字符串

你觉得可能吗?

这里我将列设置为字符串

DataFormat fmt = wb.createDataFormat();
CellStyle textStyle = wb.createCellStyle();
textStyle.setDataFormat(fmt.getFormat("@"));
sheet.setDefaultColumnStyle(1, textStyle);

然后我添加了以下约束

XSSFDataValidationConstraint dvConstraint = (XSSFDataValidationConstraint) dvHelper.createTextLengthConstraint(ComparisonOperator.EQUAL, "8", null);
CellRangeAddressList addressList = new CellRangeAddressList(-1, -1, 1, 1);
XSSFDataValidation validation = (XSSFDataValidation)dvHelper.createValidation(dvConstraint, addressList);
validation.setShowErrorBox(true);
sheet.addValidationData(validation);

但不起作用,我不知道如何添加等于 8 或 10 的约束,也不知道数字应该是数字。

非常感谢

最佳答案

我是这样做的,虽然不完全像我想要的,但可以接受:

dvConstraint = (XSSFDataValidationConstraint) dvHelper.createNumericConstraint(ValidationType.TEXT_LENGTH, OperatorType.BETWEEN, "8", "10");
addressList = new CellRangeAddressList(-1, -1, 1, 1);
validation = (XSSFDataValidation)dvHelper.createValidation(dvConstraint, addressList);
validation.setShowErrorBox(true);
sheet2.addValidationData(validation);

关于java - Apache POI - 文本长度限制为 8 或 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46450291/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com