直接来自http://super-csv.github.io/super-csv/examples_reading.html文档的此示例无法编译。新的CellProcessor [] {...}中的所有行均生成错误“类型不兼容。要求:找到的CellProcessor:org.supercsv.cellprocessor.constraint.UniqueHashCode”

我想念什么?

import org.supercsv.cellprocessor.Optional;
import org.supercsv.cellprocessor.ParseBool;
import org.supercsv.cellprocessor.ParseDate;
import org.supercsv.cellprocessor.ParseInt;
import org.supercsv.cellprocessor.constraint.LMinMax;
import org.supercsv.cellprocessor.constraint.NotNull;
import org.supercsv.cellprocessor.constraint.StrRegEx;
import org.supercsv.cellprocessor.constraint.UniqueHashCode;

public class Foo {


    private static CellProcessor[] getProcessors() {

        final String emailRegex = "[a-z0-9\\._]+@[a-z0-9\\.]+"; // just an example, not very robust!
        StrRegEx.registerMessage(emailRegex, "must be a valid email address");

        final CellProcessor[] processors = new CellProcessor[] {
                new UniqueHashCode(), // customerNo (must be unique)
                new NotNull(), // firstName
                new NotNull(), // lastName
                new ParseDate("dd/MM/yyyy"), // birthDate
                new NotNull(), // mailingAddress
                new Optional(new ParseBool()), // married
                new Optional(new ParseInt()), // numberOfKids
                new NotNull(), // favouriteQuote
                new StrRegEx(emailRegex), // email
                new LMinMax(0L, LMinMax.MAX_LONG) // loyaltyPoints
        };

        return processors;
    }

}

最佳答案

我只是在IntelliJ中尝试过,唯一的错误是您缺少CellProcessor的导入。



import org.supercsv.cellprocessor.ift.CellProcessor;


一切都会正常。

关于java - Supercsv示例无法编译,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31735580/

10-09 05:35