首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >csv到pojo与另一个pojo

csv到pojo与另一个pojo
EN

Stack Overflow用户
提问于 2013-05-03 15:59:22
回答 1查看 1.2K关注 0票数 1
代码语言:javascript
运行
复制
Orgnization{

private String name;
private String uniqueId;
private boolean selfRegEnabled;
private List<Address> addrList;

public void setAddress(Address a){..}
public void setName(String name){..}

}

Addess{
private String type;
private String line1;
private String line2;
private String line3;
private String city;
private String state;
private String zip;
private String country;
}

CSV头列如下所示

System.UniqueID,名称,EnableSelf-注册,Addr1.Type,Addr1.Line1,Addr1.Line2,Addr1.Line3,Addr1.City,Addr1.State,Addr1.Zip,Addr1.Country,Addr2.Type,Addr2.Line1,Addr2.Line2,Addr2.Line3,Addr2.City,Addr2.State,Addr2.Zip,Addr2.Country,Addr3.Line1,Addr3.Line2,Addr3.Line3,Addr3.City,Addr3.State,Addr3.p,Addr3.Country

我的问题可能与以下链接有关

OpenCSV CSV到JavaBean

我没有看到那条线有一个正确的答案(我不确定我是否漏掉了那条线)

对于任何现有的csv库,例如supercsv、opencsv,我们能实现同样的目标吗?

如果我使用的是超级csv -我可以将csv的System.UniqueID列映射到bean的systemUniqueID属性吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-04 01:58:48

当然,您可以使用超级CSV使用CsvDozerBeanReader来完成这一任务。在网站上看到这个示例

它在上也有更详细的解释,所以请回答。

您可能还对最近的问题感兴趣,因为它演示了使用Super实现深度/索引映射的不同方法(使用和不使用Dozer)。

按照网站上的CsvDozerBeanReader示例,要从您的问题中读取CSV,您将使用以下字段映射:

代码语言:javascript
运行
复制
final String[] fieldMapping = new String[]{
    "uniqueId",
    "name",
    "selfRegEnabled",
    "addrList[0].type",
    "addrList[0].line1",
    "addrList[0].line2",
    "addrList[0].line3",
    "addrList[0].city",
    "addrList[0].state",
    "addrList[0].zip",
    "addrList[0].country",
    "addrList[1].type",
    "addrList[1].line1",
    "addrList[1].line2",
    "addrList[1].line3",
    "addrList[1].city",
    "addrList[1].state",
    "addrList[1].zip",
    "addrList[1].country",
    "addrList[2].type",
    "addrList[2].line1",
    "addrList[2].line2",
    "addrList[2].line3",
    "addrList[2].city",
    "addrList[2].state",
    "addrList[2].zip",
    "addrList[2].country"
};

另外,由于selfRegEnabled字段是布尔字段,因此需要使用单元处理器将字符串值转换为布尔值-要做到这一点,您需要使用ParseBool处理器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16363092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档