标签: supercsv

SuperCSV 追加而不是覆盖?

是否可以向 CSV 文件添加新行,而不是覆盖最后一行?

这是我想添加新行时调用的方法:

private static void writeWithCsvMapWriter() throws Exception 
{
    final String[] header = new String[] { "Engineer", "Time/Date", "Project", "Test ID", "Data Centre", "Data Hall", "Row", "Grille", "I/S" };

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd_HH:mm:ss");
    String currentDateandTime = sdf.format(new Date());

    final Map<String, Object> NewRow = new HashMap<String, Object>();
    NewRow.put(header[0], Name.getText().toString());
    NewRow.put(header[1], currentDateandTime);
    NewRow.put(header[2], "Expect");
    NewRow.put(header[3], TestID.getText());
    NewRow.put(header[4], DataCentre.getText());
    NewRow.put(header[5], DataHall.getText());
    NewRow.put(header[6], Row.getText());
    NewRow.put(header[7], Grille.getText());
    NewRow.put(header[8], IS.getText());

    ICsvMapWriter mapWriter = null;

    try 
    {
        mapWriter = new CsvMapWriter(new FileWriter("data/data/" + PACKAGE_NAME …
Run Code Online (Sandbox Code Playgroud)

java csv android supercsv

3
推荐指数
1
解决办法
2172
查看次数

忽略csv中的额外列 - SuperCSV

我正在使用SuperCSV将CSV记录解析为Object.我的CSV文件最后有额外的列,我只想处理前X列.所以我String[]为前X列和CellProcessor[]相同大小定义了映射.但它似乎不起作用,并抛出异常,即单元格数量的处理器应与列数完全相同.

有人可以告诉我,如果我错过了什么.即使我不想要它们,我是否需要定义映射数组以具有与五个完全相同的列?

  public CsvToBeanParser(Reader reader, Class<T> type, CsvPreference preference, CellProcessor[] cellProcessors, String[] mapping, boolean skipHeader)
        throws IOException {
    this.beanReader = new CsvBeanReader(reader, preference);
    this.mapping = mapping;
    if (skipHeader) {
        beanReader.getHeader(true);
    }
    this.cellProcessors = cellProcessors;
    this.type = type;

}

/**
 * Parse and return record.
 * 
 * @return
 * @throws Exception
 *             if there is any parsing error
 */
public T getItem() throws Exception {
    try {
        return (T) beanReader.read(type, mapping, cellProcessors);
    } catch (Exception e) { …
Run Code Online (Sandbox Code Playgroud)

java supercsv

2
推荐指数
1
解决办法
3069
查看次数

使用 SuperCSV 处理具有 NULL 值的列

有没有办法配置 SuperCSV 期望如何处理 NULL 值?这有时被处理为:

,,
Run Code Online (Sandbox Code Playgroud)

或作为:

,NULL,
Run Code Online (Sandbox Code Playgroud)

或作为:

,null,
Run Code Online (Sandbox Code Playgroud)

但是我似乎找不到一种方法来配置 SuperCSV 期望如何处理这些,尤其是对于数字列。

java supercsv

2
推荐指数
1
解决办法
3147
查看次数

使用supercsv进行CSV标头验证

如何验证CSV文件的数据包含标题?我正在使用supercsv和Java。我的csv文件包含;

ACCOUNT,NAME,PHONE(标头)<---需要验证,所有标头都必须显示Checking,John,1122222222(数据)

Saving,Carl,1234567891(数据)

谢谢您的帮助。

java csv supercsv

1
推荐指数
1
解决办法
2640
查看次数

DecimalFormat"模式中的多个小数分隔符"

我想将十进制值格式化为货币值:1234.56d应变为"1.234,56"(此格式在某些欧洲国家/地区使用).我使用以下模式格式化十进制值:

final DecimalFormat df = new DecimalFormat("###.###.###,00");
final String formatted = df.format(1234.56d);
System.out.println(formatted);
Run Code Online (Sandbox Code Playgroud)

事实上我正在使用SuperCSV的类FmtNumber,但这没关系,因为模式语法是相同的:new FmtNumber("###.###.###,00");

我得到的是IllegalArgumentException,消息"模式中有多个小数分隔符".

我知道只能有一个小数分隔符.但就我而言,它应该是","的标志.并且","在我的模式中只出现一次.

我搜索了Web和StackOverflow这个异常消息,但我没有找到有用的答案.

我的错误是什么?

java formatting supercsv

1
推荐指数
1
解决办法
5936
查看次数

使用超级CSV解析制表符分隔文件

我正在尝试使用包含两个字段(制表符分隔)的超级CSV和未加引号的字符串来解析CSV文件.

    occugroup_code  occugroup_name
    110000          Management Occupations  
    130000          Business and Financial Operations Occupations   
    150000          Computer and Mathematical Occupations   

我很难弄清楚如何配置CsvPreference以便能够为每两个返回一个Map.有人遇到过这个问题吗?

java csv supercsv

-1
推荐指数
1
解决办法
4065
查看次数

标签 统计

java ×6

supercsv ×6

csv ×3

android ×1

formatting ×1