Create a CSV file | Groovy Examples
Create a CSV file
For this example, let’s assume we have an array of maps as our data.
def planets = [ [ id: '1' ,color: 'red' ,planet: 'mars' ,description: 'Mars, the "red" planet' ] , [ id: '2' ,color: 'green' ,planet: 'neptune' ,description: 'Neptune, the "green" planet' ] , [ id: '3' ,color: 'blue' ,planet: 'earth' ,description: 'Earth, the "blue" planet' ] , ]Next, we can create our CSV file as follows:
def out = new File ( 'planets.csv' ) planets. each { def row = [ it. id , it. color , it. planet ] out. append row. join ( ',' ) out. append ' \n ' }Which creates a file with the following content:
1,red,mars 2,green,neptune 3,blue,earthHowever, this does not contain our description field. If you need to also handle double quotes and commas in your data then you can:
- qualify your values with a double quote, and
- replace double quotes in your data with an escaped double quote.
In this case our code may look like:
def out = new File ( 'planets.csv' ) planets. each { def row = [ it. id , it. color , it. planet , it. description ] . collect { '"' + it. replace ( '"' , '""' ) + '"' } out. append row. join ( ',' ) out. append ' \n ' }Which creates a file with the following content:
"1","red","mars","Mars, the ""red"" planet" "2","green","neptune","Neptune, the ""blue"" planet" "3","blue","earth","Earth, the ""blue"" planet"
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
