Mohit Kanada
Mohit Kanada

Reputation: 15984

How to parse the CSV file in android application?

I have a CSV file in drawable/asset folder. In the CSV file there are four columns. First one is for date and rest three are for integer data.

I need to parse this CSV file and save the data in separate arrays.

I have searched for a solution, but I don't get proper idea on how to do this.

Upvotes: 22

Views: 24070

Answers (1)

nspo
nspo

Reputation: 1518

I like this csv reader: https://mvnrepository.com/artifact/net.sf.opencsv/opencsv/2.3

Just add it to your project.

Example code (assuming there is the file assets/test.csv):

        String next[] = {};
        List<String[]> list = new ArrayList<String[]>();

        try {
            CSVReader reader = new CSVReader(new InputStreamReader(getAssets().open("test.csv")));
            while(true) {
                next = reader.readNext();
                if(next != null) {
                    list.add(next);
                } else {
                    break;
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

You can access the imported data with, for example,

list.get(1)[1]

That would return a string.

Upvotes: 33

Related Questions