最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android如何讀寫CSV文件方法示例

 更新時間:2017年08月29日 09:45:59   作者:RustFisher  
CSV 文件是Excel 的標準文件格式,在開發(fā)過程中經(jīng)常需要格式化輸出數(shù)據(jù)。CSV 的格式非常簡單,都是一行一行存儲的,同一行不同列之間用逗號隔開。下面這篇文章主要給大家介紹了關(guān)于Android如何讀寫CSV文件的相關(guān)資料,需要的朋友可以參考下。

前言

本文主要給大家介紹的是關(guān)于Android讀寫CSV文件的相關(guān)內(nèi)容,CSV也就是Comma-Separated Values逗號分隔的文本文件,

讀寫csv文件和讀寫普通文件類似;寫的時候給數(shù)據(jù)之間添加上逗號。

設(shè)定存儲路徑和文件名:

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來向文件尾部添加數(shù)據(jù)

FileOutputStream.write(byte[] data)向文件流寫入字節(jié)數(shù)據(jù)。

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();// 這里創(chuàng)建的是目錄
   }
  }
  @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讀取每一行內(nèi)容;讀出來的數(shù)據(jù)帶有逗號分隔符

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());// 顯示
    }
   });
  }
 }

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • Android自定義View仿QQ等級天數(shù)進度

    Android自定義View仿QQ等級天數(shù)進度

    這篇文章主要為大家詳細介紹了Android自定義View仿QQ等級天數(shù)進度效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-07-07
  • Android Studio 實現(xiàn)文檔注釋的快捷鍵

    Android Studio 實現(xiàn)文檔注釋的快捷鍵

    這篇文章主要介紹了Android Studio 實現(xiàn)文檔注釋的快捷鍵,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Android修改jar文件包名的方法分享

    Android修改jar文件包名的方法分享

    為了防止沖突,修改包名是最直接的途徑。下面這篇文章主要介紹了關(guān)于Android中修改jar文件包名的方法,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-03-03
  • 詳解Android JS相互調(diào)用

    詳解Android JS相互調(diào)用

    這篇文章主要為大家介紹了Android與JS兩者之間的相互調(diào)用,感興趣的小伙伴們可以參考一下
    2016-01-01
  • Android?Adapter適配器使用示例講解

    Android?Adapter適配器使用示例講解

    這篇文章主要為大家介紹了Android?Adapter適配器使用示例講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Android來電監(jiān)聽和去電監(jiān)聽實現(xiàn)代碼

    Android來電監(jiān)聽和去電監(jiān)聽實現(xiàn)代碼

    本文是關(guān)于來點監(jiān)聽和去電監(jiān)聽展開問題,通過實例代碼講解,對android來電監(jiān)聽和去電監(jiān)聽的相關(guān)知識感興趣的朋友一起看看吧
    2017-06-06
  • Android實現(xiàn)支付寶6位密碼輸入界面

    Android實現(xiàn)支付寶6位密碼輸入界面

    這篇文章主要為大家詳細介紹了Android實現(xiàn)支付寶6位密碼輸入界面的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Android利用Badge組件實現(xiàn)未讀消息小紅點

    Android利用Badge組件實現(xiàn)未讀消息小紅點

    在?App?的運營中,活躍度是一個重要的指標,日活/月活……為了提高活躍度,就發(fā)明了小紅點。這一篇,來介紹一個徽標(Badge)組件,能夠快速搞定應(yīng)用內(nèi)的小紅點,希望對大家有所幫助
    2023-01-01
  • 一篇文章弄懂Android自定義viewgroup的相關(guān)難點

    一篇文章弄懂Android自定義viewgroup的相關(guān)難點

    這篇文章主要給大家介紹了關(guān)于如何通過一篇文章弄懂Android中自定義viewgroup的一些相關(guān)難點,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-06-06
  • 淺析安卓(Android)的性能優(yōu)化

    淺析安卓(Android)的性能優(yōu)化

    性能優(yōu)化是一個大的范疇,如果有人問你在Android中如何做性能優(yōu)化的,也許都不知道從哪開始說起。那么這篇文章我們從布局優(yōu)化和內(nèi)存優(yōu)化兩個方面來展開說如何進行Android的性能優(yōu)化。
    2016-08-08

最新評論

中西区| 恩施市| 琼海市| 信宜市| 黄浦区| 湘潭县| 德庆县| 九江县| 甘南县| 行唐县| 镇巴县| 城口县| 东阳市| 郧西县| 荣昌县| 内乡县| 双流县| 罗源县| 兴隆县| 凤翔县| 进贤县| 平定县| 云阳县| 涿州市| 凤庆县| 霍林郭勒市| 长泰县| 乃东县| 长岭县| 宜州市| 岳阳市| 三江| 抚州市| 淳化县| 赣州市| 民勤县| 东乡县| 宾阳县| 城固县| 托克逊县| 蒙自县|