溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android怎么讀寫CSV文件

發布時間:2021-02-19 10:17:48 來源:億速云 閱讀:475 作者:小新 欄目:移動開發

小編給大家分享一下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文件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女