获取空CSV文件

时间:2017-03-16 17:59:23

标签: csv groovy concurrenthashmap

我正在尝试将hashmap数据写入CSV文件,但我看到正在生成空文件。以下是我正在使用的以下代码:

Mypassword

有人可以帮助我,我在这里做错了吗?

注意: concurrentHashMap Size = 2

concurrentHashMap = [NetworkLeakage_Main_crosstab.csv:总付款总额的百分比没有专业服务网络,网站类型总付款没有临 Home Health Out Of Network 1%$ 247,870 家庭健康拥有6%$ 1,306,259 熟练的护理设施超出网络4%$ 860,545 熟练护理设施拥有18%$ 3,919,193 ,IP_RehabSNF_Profiles_crosstab.csv:工厂工地类型网络关联数量总数支付总支付金额%支付款ALOS CMS评级 LORRETTA HOSPITAL主持人28 $ 344,392 2%$ 12,300 3
LORRETTA HOSPITAL Home Health Out Of Network 87 $ 14,358 0%$ 2,872
LORRETTA HOSPITAL家庭健康拥有19 $ 2,981 0%$ 2,981
LORRETTA HOSPITAL门诊网络77美元$ 3,706 0%$ 71
LORRETTA HOSPITAL门诊患者1,593 $ 149,194 1%$ 288
]

因此,这里有两组密钥(文件名)和值(数据),我需要生成以下两个文件: 1. NetworkLeakage_Main_crosstab.csv

  1. IP_RehabSNF_Profiles_crosstab.csv

2 个答案:

答案 0 :(得分:2)

更改更简单:

        Writer writer = new FileWriter(".\\baseline-files\\" + fileName)
        for (Map.Entry<String, String> entry : collectedCSV.entrySet()) {
            println "entry = $entry"
            writer.append(entry.getKey())
                    .append(',')
                    .append(entry.getValue())
                    .append(eol)
        }

        new File("./baseline-files/$fileName").withWriter { writer ->
            collectedCSV.each { key, value ->
                writer.writeLine "$key,$value"
            }
        }

这会自动为你关闭作家

答案 1 :(得分:0)

添加writer.close()作为Writer缓冲数据。

最好将其添加到finally块:

} catch (IOException ex) {
    ex.printStackTrace(System.err)
} finally {
    writer.close();
}