Example usage for com.fasterxml.jackson.dataformat.csv CsvMapper CsvMapper

List of usage examples for com.fasterxml.jackson.dataformat.csv CsvMapper CsvMapper

Introduction

In this page you can find the example usage for com.fasterxml.jackson.dataformat.csv CsvMapper CsvMapper.

Prototype

public CsvMapper() 

Source Link

Usage

From source file:db.migration.util.DbUtil.java

public static Iterator<Object[]> readCsv(URL csvUrl) throws Exception {
    CsvMapper mapper = new CsvMapper();
    mapper.enable(CsvParser.Feature.WRAP_AS_ARRAY);
    return mapper.reader(String[].class).readValues(csvUrl);
}

From source file:ro.fortsoft.dada.csv.CsvGenericDao.java

public long readFromCsv() {
    File file = new File(csvFile);
    if (!file.exists() || !file.isFile()) {
        return 0;
    }// w  w w  .java 2s.co m

    Class<T> persistentClass = getPersistentClass();

    // create mapper and schema
    CsvMapper mapper = new CsvMapper();
    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    CsvSchema schema = mapper.schemaFor(persistentClass).withHeader();

    this.entities = new ArrayList<>();

    // read entities
    long count = 0;
    try {
        MappingIterator<T> it = mapper.reader(persistentClass).with(schema).readValues(file);
        while (it.hasNextValue()) {
            entities.add(it.nextValue());
            count++;
        }
    } catch (IOException e) {
        e.printStackTrace();
    }

    return count;
}

From source file:com.marklogic.entityservices.e2e.CSVLoader.java

public CSVLoader() {
    super();

    bootstrapSchema = CsvSchema.emptySchema().withHeader();
    csvMapper = new CsvMapper();
}

From source file:io.github.binout.jaxrs.csv.CsvMessageBodyProvider.java

@Override
public Object readFrom(Class<Object> aClass, Type type, Annotation[] annotations, MediaType mediaType,
        MultivaluedMap<String, String> multivaluedMap, InputStream inputStream)
        throws IOException, WebApplicationException {
    CsvMapper mapper = new CsvMapper();
    Class csvClass = (Class) (((ParameterizedType) type).getActualTypeArguments())[0];
    CsvSchema schema = CsvSchemaFactory.buildSchema(mapper, csvClass);
    return mapper.reader(csvClass).with(schema).readValues(inputStream).readAll();
}

From source file:hrytsenko.gscripts.io.CsvFiles.java

/**
 * Load records from file.//from w w w . j a v  a 2  s.  c  om
 * 
 * @param args
 *            the named arguments.
 * 
 * @return the list of text records.
 * 
 * @throws AppException
 *             if file could not be loaded.
 */
public static List<Map<String, String>> loadCsv(Map<String, ?> args) {
    Path path = NamedArgs.findPath(args);
    LOGGER.info("Load {}.", path.getFileName());

    CsvSchema schema = schemaFrom(args).setUseHeader(true).build();

    try (InputStream dataStream = Files.newInputStream(path);
            InputStream bomStream = new BOMInputStream(dataStream);
            Reader dataReader = new InputStreamReader(bomStream, charsetFrom(args))) {
        CsvMapper mapper = new CsvMapper();
        ObjectReader reader = mapper.readerFor(Map.class).with(schema);
        return Lists.newArrayList(reader.readValues(dataReader));
    } catch (Exception exception) {
        throw new AppException(String.format("Could not load file %s.", path.getFileName()), exception);
    }
}

From source file:ro.fortsoft.dada.csv.CsvGenericDao.java

public long writeToCsv() {
    Class<T> persistentClass = getPersistentClass();

    // create mapper and schema
    CsvMapper mapper = new CsvMapper();
    CsvSchema schema = mapper.schemaFor(persistentClass).withHeader();

    // write entities
    long count = 0;
    try {//from w  w  w. j a  v a 2  s  .c om
        mapper.writer().with(schema).writeValue(new File(csvFile), entities);
        count = entities.size();
    } catch (IOException e) {
        e.printStackTrace();
    }

    return count;
}

From source file:fi.helsinki.opintoni.config.http.converter.CsvHttpMessageConverter.java

private String getCsv(CsvResponse<T> response) {
    CsvMapper csvMapper = new CsvMapper();
    CsvSchema csvSchema = csvMapper.schemaFor(response.getType());
    return response.entries.stream().map(entry -> toCsvRow(csvMapper, csvSchema, entry))
            .collect(Collectors.joining());
}

From source file:hrytsenko.csv.IO.java

/**
 * Gets records from file.//from   www.j ava2  s.co  m
 * 
 * <p>
 * If closure is given, then it will be applied to each record.
 * 
 * @param args
 *            the named arguments {@link IO}.
 * @param closure
 *            the closure to be applied to each record.
 * 
 * @return the loaded records.
 * 
 * @throws IOException
 *             if file could not be read.
 */
public static List<Record> load(Map<String, ?> args, Closure<?> closure) throws IOException {
    Path path = getPath(args);
    LOGGER.info("Load: {}.", path.getFileName());

    try (InputStream dataStream = newInputStream(path, StandardOpenOption.READ);
            InputStream bomStream = new BOMInputStream(dataStream);
            Reader dataReader = new InputStreamReader(bomStream, getCharset(args))) {
        CsvSchema csvSchema = getSchema(args).setUseHeader(true).build();
        CsvMapper csvMapper = new CsvMapper();
        ObjectReader csvReader = csvMapper.reader(Map.class).with(csvSchema);

        Iterator<Map<String, String>> rows = csvReader.readValues(dataReader);
        List<Record> records = new ArrayList<>();
        while (rows.hasNext()) {
            Map<String, String> row = rows.next();
            Record record = new Record();
            record.putAll(row);
            records.add(record);

            if (closure != null) {
                closure.call(record);
            }
        }
        return records;
    }
}

From source file:io.github.binout.jaxrs.csv.CsvMessageBodyProvider.java

@Override
public void writeTo(Object o, Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType,
        MultivaluedMap<String, Object> multivaluedMap, OutputStream outputStream)
        throws IOException, WebApplicationException {
    CsvMapper mapper = new CsvMapper();
    String body = objectClass(o, aClass).map(csvClass -> {
        CsvSchema schema = CsvSchemaFactory.buildSchema(mapper, csvClass);
        try {//from w ww  .  j  a  v a2s .c o  m
            return mapper.writer(schema).writeValueAsString(o);
        } catch (JsonProcessingException e) {
            throw new RuntimeException(e);
        }
    }).orElse("");
    outputStream.write(body.getBytes(StandardCharsets.UTF_8));
}

From source file:net.flutterflies.fwapaderp.game.TeamManager.java

/**
 * Converts a .csv spreadsheet template into a UHCTeam object
 *
 * @param teamsList Used purely as a reference to an earlier object, overwriting it
 * @return A list of all UHCTeams//from  w ww. ja va  2 s .  co  m
 */
public ArrayList<UHCTeam> createTeamsFromCSV(ArrayList<UHCTeam> teamsList) {
    ArrayList<String[]> rows = new ArrayList<>();
    File teamsFile = new File(plugin.getDataFolder(), "teams.csv");
    CsvMapper mapper = new CsvMapper();

    //Clear any existing teams on the team list
    teamsList.clear();

    mapper.enable(CsvParser.Feature.WRAP_AS_ARRAY);

    //Try to load values from teams.csv
    try {
        MappingIterator<String[]> iterator = mapper.readerFor(String[].class).readValues(teamsFile);
        while (iterator.hasNext()) {
            rows.add(rows.size(), iterator.next());
        }
    } catch (IOException e) {
        plugin.getLogger().log(Level.SEVERE, "Could not find the file teams.csv! Please either supply"
                + "a teams.csv file or disable usePreMadeTeams in the plugin's config file.");
        System.exit(0);
    }

    //For each row in the csv file create a new team
    for (int i = 1; i < rows.size(); i++) {
        String[] team = rows.get(i);
        List<String> teamPlayerList = new ArrayList<>();
        for (int j = 2; j < team.length; j++) {
            if (!team[j].equals("")) {
                teamPlayerList.add(teamPlayerList.size(), team[j]);
            }
        }
        teamsList.add(teamsList.size(),
                new UHCTeam(team[0], team[1].toUpperCase().replace(' ', '_'), teamPlayerList));
    }

    //Write Teams to a yaml file
    for (int i = 0; i < teamList.size(); i++) {
        //Get the team
        UHCTeam team = teamList.get(i);

        //Write the team name
        plugin.getTeamConfig().set("teams.team" + (i + 1) + ".name", team.getTeamName(false));
        //Write the team's color
        plugin.getTeamConfig().set("teams.team" + (i + 1) + ".color", team.getTeamColor());
        //Write all the players in the team
        for (int j = 0; j < team.getTeamSize(); j++) {
            plugin.getTeamConfig().set("teams.team" + (i + 1) + ".players.player" + (j + 1),
                    team.getPlayers().get(j));
        }
    }
    plugin.saveTeamsConfig();

    return teamsList;
}