java - 将 HashMap 写入 CSV 文件
问题描述
我有一个带有 String 键和 List(String) 作为值的哈希图。
例如:
Key | Values
John | GroupName1,GroupName2,GroupName3
Nick | Groupname4,GroupName1
我想将此哈希图写入 csv 文件,以便我的 csv 文件包含如下行:
John,GroupName1,GroupName2,GroupName3
Nick,Groupname4,GroupName1
我试过了:
Map<String, List<String>> usersmap = (Map<String, List<String>>) model.get("users"); //this is my map
StringWriter output = new StringWriter();
ICsvListWriter listWriter;
listWriter = new CsvListWriter(output, CsvPreference.STANDARD_PREFERENCE);
for (Map.Entry<String, List<String>> entry : usersmap.entrySet()) {
listWriter.write(entry.getKey(), entry.getValue());
}
但这对我来说似乎不对。
解决方案
尝试使用将您的列表转换为逗号分隔的字符串String.join(...)
listWriter.write(entry.getKey(), String.join(",", entry.getValue());
Java 文档:
推荐阅读
- c# - 在 Grid 列转换器中使用 GridUnitType.Star
- sql - 在存储过程中使用 CASE 语句
- android-studio - Android Studio:手势识别致命错误:找不到“ext/atomicity.h”文件
- java - HashSet 无法使用 instanceof 运算符转换为 String 错误
- javascript - 在 IBM BPM 中动态创建 TW 对象
- eigen - 如何获得置换矩阵在 Eigen3 中交换两行矩阵?
- scala - 在单子上调用“getOrElse”的通用方法
- php - Laravel Eloquent 'where' 查询不适用于给定的 id
- json - 使用 shell 在 JSON 对象中动态添加键值对
- java - 读取大文件的最有效方法