moshimore Knowledge

アプリ開発とメモ書き、日々の日記。

Assetsフォルダに保存したCSVファイルをOpenCSVで読み込む方法

Assetsフォルダに保存したCSVファイルをOpenCSVで読み込むには、CSVReaderにInputStreamReaderを渡してあげると良い。

try
{
    AssetManager assetManager = getResources().getAssets();
    
    InputStream inputStream = assetManager.open("TEST.csv");
    InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
    
    CSVReader csvReader = new CSVReader(inputStreamReader);
    
    String[] line;
    while ((line = csvReader.readNext()) != null)
    {
    	// 読み込み処理
    }
}
catch (IOException e)
{
    e.printStackTrace();
}

opencsvを導入した際に以下のような警告が表示された場合は、gradleを修正すれば良い。

Warning:WARNING: Dependency commons-logging:commons-logging:1.1.1 is ignored for debug as it may be conflicting with the internal version provided by Android.

build.gradle

compile 'com.opencsv:opencsv:3.8'
↓
compile ('com.opencsv:opencsv:3.8'){
    exclude group: 'commons-logging', module: 'commons-logging'
}