读取android根目录下的文件或文件夹
16lz
2021-01-23
这个例子非常小,就是一个读取android根目录下的文件夹或文件,当做热一下身
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);
EditText keywordText = (EditText)this.findViewById(R.id.keyword); Button button = (Button)this.findViewById(R.id.button); TextView result = (TextView)this.findViewById(R.id.result);
button.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) {
String keyword = keywordText.getText().toString(); if (keyword.equals("")) { result.setText("请勿输入空白的关键词!!"); }else { result.setText(searchFile(keyword)); } } }); }
private String searchFile(String keyword) { String result = ""; File[] files = new File("/").listFiles(); for (File file : files) { if (fike.getName().indexOf(keyword) >= 0) { result += file.getPath() + "\n"; } } if (result.equals("")){ result = "找不到文件!!"; }
return result;
}
首先,我们需要通过File.listFiles()方法获取文件夹下所有文件或者文件夹的名字,这里的文件夹的路径是"/",也就是根目录。然后我们再通过getPath()逐个获取它们的相对路径。
例子的运行结果如:
当然我们需要在根文件中添加权限:
由于例子实在是太小了,整片文章的篇幅不长,所以特意在文章的后面列出所有的文件操作以供大家参考:
一.SDK的操作
1、判断SD卡是否插入 Environment.getExternalStorageState().equals( android.os.Environment.MEDIA_MOUNTED); 这个在我之前做的东西中就非常有用,因为涉及到SDK的读取,自然就需要先判断SDK是否插入。 2、获得sd卡根目录: File skRoot = Environment.getExternalStorageDirectory(); 二.私有目录下的文件操作: 1、获得私有根目录: File fileRoot = Context.getFilesDir()+"\"; 2.文件夹或文件夹操作: (1)获得文件夹和文件路径 a.获得文件或文件夹的绝对路径和相对路径。区别 String path = File.getPath();//相对 String path = File.getAbsoultePath();//绝对 b.获得文件或文件夹的父目录 String parentPath = File.getParent(); c.获得文件或文件夹的名称: String Name = File.getName(); (2)建立文件或文件夹 File.mkDir(); //建立文件夹 File.createNewFile();//建立文件 (3)判断是文件或文件夹 File.isDirectory() File.isDirectory() (4)列出文件夹下的所有文件和文件夹名 File[] files = File.listFiles(); (5)修改文件夹和文件名 File.renameTo(dest); (6)删除文件夹或文件 File.delete();更多相关文章
- Android选择本地视频文件
- 从J2EE转向Android的第九天-----文件存储
- Android笔记四 虚拟机Dalvik、Android各种java包功能、Android相
- android保存手势操作到文件&读取识别手势
- Android listview中嵌套Checkbox的布局文件
- android studio导入 so ,jar 文件。