# Convert CSV to Dataset

**URL:** <https://forum.inductiveautomation.com/t/convert-csv-to-dataset/2505>\
**Category:** Ignition\
**Created:** [January 13, 2011, 4:40am UTC](https://forum.inductiveautomation.com/t/convert-csv-to-dataset/2505 "2011-01-13T04:40:25Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kyle\_Chase](https://avatars.discourse-cdn.com/v4/letter/k/9de0a6/32.png) [@Kyle\_Chase](https://forum.inductiveautomation.com/u/Kyle_Chase)\
**Post date:** [January 13, 2011, 4:40am UTC](https://forum.inductiveautomation.com/t/convert-csv-to-dataset/2505/1 "2011-01-13T04:40:25Z")

</div>

This code will convert a CSV file to a Ignition Dataset.

```auto
def readCsvAsDataSet(path):
	from java.io import BufferedReader,FileReader,File
	from system.dataset import toDataSet
	br = BufferedReader(FileReader(path))

	line = br.readLine()

	headers = line.split(',')

	line = br.readLine()

	data = []
	while line != None:
		data.append(line.split(','))
		line = br.readLine()

	return toDataSet(headers,data)
```

To use it, you would do something like

```auto
path = system.file.saveFile(".csv")
dataset = app.file.readCsvAsDataSet(path)
event.source.getComponent("Table").data = dataset
```

---

<div class="post-metadata">

**Author:** ![Carl.Gould](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/carl.gould/32/7262_2.png) [@Carl.Gould](https://forum.inductiveautomation.com/u/Carl.Gould)\
**Post date:** [January 22, 2011, 11:20pm UTC](https://forum.inductiveautomation.com/t/convert-csv-to-dataset/2505/2 "2011-01-22T23:20:48Z")

</div>

Thanks for posting this. Readers should also be aware that as of 7.2 there are these two functions available:

[tt]system.dataset.toCSV(Dataset)[/tt]  
and  
[tt]system.dataset.fromCSV(String)[/tt]

---

<div class="post-metadata">

**Author:** ![vahterto](https://avatars.discourse-cdn.com/v4/letter/v/e68b1a/32.png) [@vahterto](https://forum.inductiveautomation.com/u/vahterto)\
**Post date:** [January 4, 2012, 5:48pm UTC](https://forum.inductiveautomation.com/t/convert-csv-to-dataset/2505/3 "2012-01-04T17:48:53Z")

</div>

Hi

Is it possible to use UTF8 encoding with this function?  
Now all special characters goes wrong.

BR  
Tommi

---

<div class="post-metadata">

**Author:** ![Carl.Gould](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/carl.gould/32/7262_2.png) [@Carl.Gould](https://forum.inductiveautomation.com/u/Carl.Gould)\
**Post date:** [February 10, 2012, 11:24pm UTC](https://forum.inductiveautomation.com/t/convert-csv-to-dataset/2505/4 "2012-02-10T23:24:22Z")

</div>

I’m assuming you’re talking about Kyle’s script. You’d use UTF-8 like so:

```auto
 br = BufferedReader(InputStreamReader(FileInputStream(path),"UTF-8"))
```
