溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CSV-03- csv 讀寫框架支持數(shù)組、Map、Collection 等常見集合

發(fā)布時間:2020-07-08 16:46:57 來源:網(wǎng)絡 閱讀:137689 作者:葉止水ryo 欄目:編程語言

集合類

有時候?qū)ο笾袝瑪?shù)組、Map、Collection 等常見集合。

為了存儲的便利性,默認提供集合的相關支持。

特性和普通字段保持一致,如果指定注解轉(zhuǎn)換,則以注解為準。

使用示例

  • UserCollection.java

用于演示集合的對象

public class UserCollection {

    private String[] arrays;

    private LinkedList<String> lists;

    private Map<String, String> maps;

    private Set<String> sets;

    //Getter/Setter/toString()
}

存儲

  • 待存儲對象的構(gòu)建
/**
 * 構(gòu)建基于集合的測試列表
 * @return 列表
 * @since 0.0.3
 */
private List<UserCollection> buildCollectionList() {
    UserCollection user = new UserCollection();
    String[] arrays = new String[]{"a", "b", "c"};
    LinkedList<String> lists = new LinkedList<>(Arrays.asList(arrays));
    Map<String, String> maps = new HashMap<>();
    maps.put("key", "value");
    maps.put("key2", "value2");
    Set<String> sets = new HashSet<>();
    sets.add("set1");
    sets.add("set2");

    user.setLists(lists);
    user.setArrays(arrays);
    user.setMaps(maps);
    user.setSets(sets);
    return Arrays.asList(user);
}
  • 執(zhí)行存儲
public void collectionTest() {
    final String path = "src\\test\\resources\\collection.csv";
    CsvWriteBs.newInstance(path)
            .write(buildCollectionList());
}
  • 存儲效果
?arrays,lists,maps,sets
a|b,a|b|c,key2=value2|key=value,set1|set2

讀取

  • 測試類
public void collectionTest() {
    final String path = "src\\test\\resources\\collection.csv";
    List<UserCollection> userList = CsvReadBs.newInstance(path)
            .read(UserCollection.class);
    System.out.println(userList);
}
  • 測試日志
[UserCollection{arrays=[a, b], lists=[a, b, c], maps={key=value, key2=value2}, sets=[set2, set1]}]

注意

為了保證 csv 以 , 分隔的統(tǒng)一性。

集合使用 | 進行分隔,其中 map 的 key/value 分隔,用到了 =。

在使用時要注意,不要包含上述的符號,否則會出現(xiàn)解析錯亂。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI