国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Android > 正文

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

2019-10-22 18:29:05
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

前言

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

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

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

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來(lái)向文件尾部添加數(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)容;讀出來(lái)的數(shù)據(jù)帶有逗號(hào)分隔符

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é)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)VEVB武林網(wǎng)的支持。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到Android開(kāi)發(fā)頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 上林县| 亳州市| 黄龙县| 怀化市| 喀喇| 西充县| 固安县| 梅河口市| 华阴市| 利辛县| 屯门区| 岳阳县| 峨边| 锡林浩特市| 长汀县| 武穴市| 涟水县| 天气| 泸定县| 北海市| 灯塔市| 商水县| 江城| 嘉鱼县| 阿拉善左旗| 通州区| 明光市| 香港 | 伊宁县| 韶关市| 论坛| 红原县| 哈密市| 永靖县| 开鲁县| 垦利县| 台湾省| 东乌珠穆沁旗| 大港区| 无棣县| 鱼台县|