package com.bw.day09_sdcarddemo;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.app.Activity;
public class MainActivity extends Activity {
private int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取SD卡的存储状态
String state = Environment.getExternalStorageState();
// 获得SD卡存储位置
File f = Environment.getExternalStorageDirectory();
Log.i("MainActivity", f.getAbsolutePath());
File ff = null;
// 判断是否准备就绪(挂载成功)
if (state.equals(Environment.MEDIA_MOUNTED)) {
ff = new File(f.getAbsoluteFile(), "aaa.txt");
if (!ff.exists()) {
try {
// 建文件
ff.createNewFile();
// ff.mkdir();//建文件夹
} catch (IOException e) {
e.printStackTrace();
}
}
// 删除文件
ff.deleteOnExit();
}
// 往文件中写内容
try {
FileWriter fw = new FileWriter(ff);
fw.write("aaaaaaaaaaaaaaaaaaaaa");
fw.flush();
fw.close();
} catch (Exception e) {
e.printStackTrace();
}
// 读文件内容
scanSDCardFileCount();
}
/*
* 使用递归实现扫描sd卡中文件个数
*/
private void scanSDCardFileCount() {
String state = Environment.getExternalStorageState();
File sdpath = Environment.getExternalStorageDirectory();
if (state.equals(Environment.MEDIA_MOUNTED)) {
testFileCount(sdpath);
}
Log.i("MainActivity", "count:" + count);
}
private void testFileCount(File f) {
if (f != null) {
File[] f1 = f.listFiles();
for (File file : f1) {
if (file.isFile()) {
count++;
} else {
testFileCount(file);
}
}
}
}
}
扫描SD卡文件夹
最新推荐文章于 2021-05-30 13:53:29 发布