小編給大家分享一下Android怎么讀寫CSV文件,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
前言
Android讀寫CSV文件的相關內容,CSV也就是Comma-Separated Values逗號分隔的文本文件,
讀寫csv文件和讀寫普通文件類似;寫的時候給數據之間添加上逗號。
設定存儲路徑和文件名:
private static final String FILE_FOLDER = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "AboutView" + File.separator + "data"; private static final String FILE_CSV = "about_data.csv";
寫CSV文件
使用FileOutputStream來向文件尾部添加數據
FileOutputStream.write(byte[] data)
向文件流寫入字節數據。
class WriteData2CSVThread extends Thread { short[] data; String fileName; String folder; StringBuilder sb; public WriteData2CSVThread(short[] data, String folder, String fileName) { this.data = data; this.folder = folder; this.fileName = fileName; } private void createFolder() { File fileDir = new File(folder); boolean hasDir = fileDir.exists(); if (!hasDir) { fileDir.mkdirs();// 這里創建的是目錄 } } @Override public void run() { super.run(); createFolder(); File eFile = new File(folder + File.separator + fileName); if (!eFile.exists()) { try { boolean newFile = eFile.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } try { FileOutputStream os = new FileOutputStream(eFile, true); sb = new StringBuilder(); for (int i = 0; i < data.length; i++) { sb.append(data[i]).append(","); } sb.append("\n"); os.write(sb.toString().getBytes()); os.flush(); os.close(); } catch (Exception e) { e.printStackTrace(); } } }
讀CSV文件
使用BufferedReader讀取每一行內容;讀出來的數據帶有逗號分隔符
class ReadCSVThread extends Thread { String fileName; String folder; public ReadCSVThread(String folder, String fileName) { this.folder = folder; this.fileName = fileName; } @Override public void run() { super.run(); File inFile = new File(folder + File.separator + fileName); final StringBuilder cSb = new StringBuilder(); String inString; try { BufferedReader reader = new BufferedReader(new FileReader(inFile)); while ((inString = reader.readLine()) != null) { cSb.append(inString).append("\n"); } reader.close(); } catch (Exception e) { e.printStackTrace(); } runOnUiThread(new Runnable() { @Override public void run() { mCSVTv.setText(cSb.toString());// 顯示 } }); } }
以上是“Android怎么讀寫CSV文件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。