Android如何读写CSV⽂件⽅法⽰例
前⾔
本⽂主要给⼤家介绍的是关于Android读写CSV⽂件的相关内容,CSV也就是Comma-Separated Values逗号分隔的⽂本⽂件,
读写csv⽂件和读写普通⽂件类似;写的时候给数据之间添加上逗号。
设定存储路径和⽂件名:
private static final String FILE_FOLDER =
+ 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;
mkdirs方法}
private void createFolder() {
File fileDir = new File(folder);
boolean hasDir = ists();
if (!hasDir) {
fileDir.mkdirs();// 这⾥创建的是⽬录
}
}
@Override
public void run() {
super.run();
createFolder();
File eFile = new File(folder + File.separator + fileName);
if (!ists()) {
try {
boolean newFile = ateNewFile();
} 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.String().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 = adLine()) != null) {
cSb.append(inString).append("\n");
}
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
@Override
public void run() {
mCSVTv.String());// 显⽰
}
});
}
}
总结
以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作能带来⼀定的帮助,如果有疑问⼤家可以留⾔交流,谢谢⼤家对的⽀持。