There are file explorer style apps that will open it. Or you could download Csv Viewer app from Play Store.

Blurb from it.

CSV File Viewer For Android | CSV Reader - view small and large-sized CSV files.

CSV Reader - Simple, fast, and powerful tool for reading csv files.

I am not associated with it.

Answer from Rohit Gupta on Stack Exchange
๐ŸŒ
Google Play
play.google.com โ€บ store โ€บ apps โ€บ details
CSV File Viewer - Apps on Google Play
May 15, 2026 - CSV File Viewer For Android | CSV Reader - view small and large-sized CSV files.
Rating: 3.7 โ€‹ - โ€‹ 9.56K votes
Discussions

Import csv data on android (or the web)
u/derFalscheMichel - Your post was submitted successfully. Once your problem is solved, reply to the answer(s) saying Solution Verified to close the thread. Follow the submission rules -- particularly 1 and 2. To fix the body, click edit. To fix your title, delete and re-post. Include your Excel version and all other relevant information Failing to follow these steps may result in your post being removed without warning. I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns. More on reddit.com
๐ŸŒ r/excel
4
2
July 4, 2024
How to read csv file in android? - Stack Overflow
Possible Duplicate: Get and Parse CSV file in android I would like to store a csv file in android app itself & it should be called for read & later print the values according to the More on stackoverflow.com
๐ŸŒ stackoverflow.com
How can I read and show data from a csv file in Android? - Stack Overflow
I'm trying to understand how I can read from a csv file and show it on an activity in android studio. The file can contain for instance these information: name,employer,location,position type,core More on stackoverflow.com
๐ŸŒ stackoverflow.com
database - Searching in .csv files on Android smartphone - Software Recommendations Stack Exchange
I am looking for an app that allows easy search within .csv files. Minimal features can somehow read .csv files allows to search in them (searching for exact match of string in any column) is suff... More on softwarerecs.stackexchange.com
๐ŸŒ softwarerecs.stackexchange.com
Top answer
1 of 7
49

Try OpenCSV - it will make your life easier.

First, add this package to your gradle dependencies as follows

implementation 'com.opencsv:opencsv:4.6'

Then you can either do

import com.opencsv.CSVReader;
import java.io.IOException;
import java.io.FileReader;


...

try {
    CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
    String[] nextLine;
    while ((nextLine = reader.readNext()) != null) {
        // nextLine[] is an array of values from the line
        System.out.println(nextLine[0] + nextLine[1] + "etc...");
    }
} catch (IOException e) {

}

or

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
List myEntries = reader.readAll();

Edit after comment

try {
    File csvfile = new File(Environment.getExternalStorageDirectory() + "/csvfile.csv");
    CSVReader reader = new CSVReader(new FileReader(csvfile.getAbsolutePath()));
    String[] nextLine;
    while ((nextLine = reader.readNext()) != null) {
        // nextLine[] is an array of values from the line
        System.out.println(nextLine[0] + nextLine[1] + "etc...");
    }
} catch (Exception e) {
    e.printStackTrace();
    Toast.makeText(this, "The specified file was not found", Toast.LENGTH_SHORT).show();
}

If you want to package the .csv file with the application and have it install on the internal storage when the app installs, create an assets folder in your project src/main folder (e.g., c:\myapp\app\src\main\assets\), and put the .csv file in there, then reference it like this in your activity:

String csvfileString = this.getApplicationInfo().dataDir + File.separatorChar + "csvfile.csv"
File csvfile = new File(csvfileString);
2 of 7
11

The following snippet reads a CSV file from the raw resources folder (which will be packed into your .apk file upon compilation).

Android by default does not create the raw folder. Create a raw folder under res/raw in your project and copy your CSV File into it. Keep the name of the CSV file lower case and convert it into text format when asked. My CSV file name is welldata.csv.

In the snippet, WellData is the model class (with constructor, getter and setter) and wellDataList is the ArrayList to store the data.

private void readData() {
    InputStream is = getResources().openRawResource(R.raw.welldata);
    BufferedReader reader = new BufferedReader(
            new InputStreamReader(is, Charset.forName("UTF-8")));
    String line = "";

    try {
        while ((line = reader.readLine()) != null) {
           // Split the line into different tokens (using the comma as a separator).
            String[] tokens = line.split(",");

            // Read the data and store it in the WellData POJO.
            WellData wellData = new WellData();
            wellData.setOwner(tokens[0]);
            wellData.setApi(tokens[1]);
            wellData.setLongitude(tokens[2]);
            wellData.setLatitude(tokens[3]);
            wellData.setProperty(tokens[4]);
            wellData.setWellName(tokens[5]);
            wellDataList.add(wellData);

            Log.d("MainActivity" ,"Just Created " + wellData);
        }
    } catch (IOException e1) {
        Log.e("MainActivity", "Error" + line, e1);
        e1.printStackTrace();
    }
}
๐ŸŒ
Aknay
aknay.github.io โ€บ 2018 โ€บ 09 โ€บ 28 โ€บ how-to-open-a-csv-file-from-android.html
How to open a CSV file from Android App
Once the string data is extracted from the CSV file, we use joinToString function to display on text view mTextViewCsvResult. You can assign any number to READ_REQUEST_CODE. Doesnโ€™t has to be 123 in this example. But when you have multiple intents (eg. open image files, open PDF files) then you need to assign a unique number to each intent and act on it based on that number. We donโ€™t have much to explain here. Just take note of the android:id for MainActivity.
๐ŸŒ
GitHub
github.com โ€บ teabow โ€บ android-csv-reader
GitHub - teabow/android-csv-reader: A simple Android csv reader implementation with annotations
An Android csv reader implementation with annotations
Starred by 17 users
Forked by 7 users
Languages ย  Java 100.0% | Java 100.0%
๐ŸŒ
Javapapers
javapapers.com โ€บ android โ€บ android-read-csv-file
Android Read CSV File - Javapapers
InputStream inputStream = getResources().openRawResource(R.raw.stats); CSVFile csvFile = new CSVFile(inputStream); List ... Now lets look at this example Android application where we have used a CSV file to load data. We have used the Android custom list view layout to load and display the data from CSV file.
๐ŸŒ
Softonic
csv-file-viewer.en.softonic.com โ€บ home โ€บ android โ€บ productivity โ€บ csv file viewer
CSV File Viewer for Android - Download
May 29, 2026 - CSV File Viewer is an application for viewing CSV files on Android.
Rating: 9.8/10 โ€‹ - โ€‹ 1 votes
Find elsewhere
๐ŸŒ
Reddit
reddit.com โ€บ r/excel โ€บ import csv data on android (or the web)
r/excel on Reddit: Import csv data on android (or the web)
July 4, 2024 -

For context: I'd like to compare election results over multiple elections from the past few years in my district.

The data I got access to is quite a broad arrangement of text files with pages of data separated by varying amounts of semicolons. I tried to simply convert to .csv, but that way excel just sorts them into like a thousand columns, but doesn't add a single row.

I tried the webversion, but next to the fact that its very glitchy, the whole split into columns isn't particularly useful if I don't want to spend hours dragging data vertically.

What I like to do is arrange the data quite simply by minor district, amount of voters, amount of votes for party A and so on, and ultimately compare it with other elections in a single sheet.

Do you have any idea how I could import the data in a way that will save me all that? In theory, it seems pretty simple, but right now it seems impossible to me, despite having all the data delivered on a silver plate

๐ŸŒ
CSVBox Blog
blog.csvbox.io โ€บ home โ€บ read & import csv files in an android app (kotlin)
Read & Import CSV Files in an Android App (Kotlin) - CSVBox Blog
September 16, 2025 - Learn how to read and import CSV files in an Android app with Kotlin code examples and best practices.
๐ŸŒ
dotTech
dottech.org โ€บ home โ€บ android โ€บ how to open and read csv files in android [tip]
How to open and read CSV files in Android [Tip] | dotTechdotTech
March 6, 2015 - Open the Play Store app from your Android device. Search for the โ€œCSV Viewerโ€ app and then install it on your tablet or phone.
๐ŸŒ
Gadgets To Use
gadgetstouse.com โ€บ home โ€บ 3 ways to open and edit csv files on android phone
3 Ways to Open and Edit CSV Files on Android Phone - Gadgets To Use
October 4, 2022 - CSV Viewer App is a complete Android app to deal with all the CSV files. Using this app, you can even write and read data codes of table designing. It also offers rich features such as data analysis and charts to run calculations.
๐ŸŒ
Google Play
play.google.com โ€บ store โ€บ apps โ€บ details
CSV file Create Edit & Viewer - Apps on Google Play
This is the 100% csv viewer for Android free app.
Rating: 3.1 โ€‹ - โ€‹ 185 votes
๐ŸŒ
Aptoide
csv-file-viewer.en.aptoide.com โ€บ homepage โ€บ android apps โ€บ productivity โ€บ csv file viewer
CSV File Viewer - APK Download for Android | Aptoide
May 16, 2026 - CSV File Viewer is an application designed for users who need to access and manage CSV files efficiently. This app, which is available for the Android platform, simplifies the process of viewing and interacting with comma-separated values files, making it an essential tool for data analysts, business professionals, and anyone who frequently works with tabular data.
๐ŸŒ
GitHub
github.com โ€บ abdymm โ€บ Android-CSV
GitHub - abdymm/Android-CSV: export data on android to csv
export data on android to csv. Contribute to abdymm/Android-CSV development by creating an account on GitHub.
Starred by 3 users
Forked by 8 users
Languages ย  Java 100.0% | Java 100.0%
Top answer
1 of 2
3

You are indeed confused and mixing some things up. Let's go step by step.

STEP BY STEP, QUESTION BY QUESTION

  1. A class and an activity are not the same. You can read about it here and here. To put it in an easy way:

    • A class is a Java form.
    • For each screen in your app you will have a different activity. Each of them might have more than one class.
  2. Then, in Android, if you want to do any app (including the one which needs to read the .csv) you will need an activity, so that there is at least one screen in which the user can be. That is to say that the first thing you will need to do is to create an activity and add it to the manifest as the default activity (so that it appears together with the rest of apps). Do this (create activity), and then this (set it as default).

  3. Now you should be able to try the app in an emulator or a physical device and see an empty screen that does nothing.

  4. So far, so good. Now to the .csv reading problem. We will read the code as soon as the user enters the activity, when the activity is created (in the onCreate method). There should be a piece of code like the following one in your activity, otherwise, create it.

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
  1. Now we will proceed to read the csv inside the onCreate (you could also do it when the user presses a button, etc.). Note that one thing is reading it and the other one is creating visible UI lists with it. Here you can see how to read a csv file (either if you have it in the sd or if you pack it with the app).

EDIT. Let's deep deeper into this step (5). As stated in the answer I have referenced, you need to:

Add this package to your gradle dependencies as follows

implementation 'com.opencsv:opencsv:4.6'

And then modify the onCreate (or wherever you want to read the csv):

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

try {
// OPTION 1: if the file is in the sd
    File csvfile = new File(Environment.getExternalStorageDirectory() + "/csvfile.csv"); 
// END OF OPTION 1

// OPTION 2: pack the file with the app
/* "If you want to package the .csv file with the application and have it install on the internal storage when the app installs, create an assets folder in your project src/main folder (e.g., c:\myapp\app\src\main\assets\), and put the .csv file in there, then reference it like this in your activity:" (from the cited answer) */
String csvfileString = this.getApplicationInfo().dataDir + File.separatorChar + "csvfile.csv"
File csvfile = new File(csvfileString);
// END OF OPTION 2

    CSVReader reader = new CSVReader(new FileReader("csvfile.getAbsolutePath()"));
    String[] nextLine;
    while ((nextLine = reader.readNext()) != null) {
        // nextLine[] is an array of values from the line
        System.out.println(nextLine[0] + nextLine[1] + "etc...");
    }
} catch (Exception e) {
    e.printStackTrace();
    Toast.makeText(this, "The specified file was not found", Toast.LENGTH_SHORT).show();
}
}

FINALLY

Right, so this would be it. If you also wanted to represent this data in a list, a grid, etc., well, this is another question! However, just in case, you just need to use again the activity you created, but add the ListView to your layout and feed the list also in onCreate (for example). See a tutorial here.

2 of 2
0

You can use TableUIBuilder to read your CSV file and render it as TableLayout as follows:-

((ViewGroup) findViewById(R.id.tableContainer)).addView(new TableUIBuilder(this, "student_records.csv").build());
๐ŸŒ
Allbestapps
csv-file-reader.allbestapps.net
Best Csv file reader apps for Android - AllBestApps
Welcome to the best Android CSV File Reader apps list. CSV stands for comma-separated values and is widely used in data storage and data interchange. This list provides you with the best Android apps to open and read CSV files so that you can manage your data with ease.