读取android根目录下的文件或文件夹实例

 更新时间:2016年12月01日 14:36:03   作者:文酱  
本篇文章主要介绍了读取android根目录下的文件或文件夹,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

最近几天真的是各种意义上的忙,忙着考试,还要忙着课程设计,手上又有外包的项目,另一边学校的项目还要搞,自己的东西还在文档阶段,真的是让人想死啊!!

近半个月来,C#这方面的编码比较多,android和java这里完全搁置了,于是抽空写个小例子。

这个例子非常小,就是一个读取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()逐个获取它们的相对路径。

例子的运行结果如:

当然我们需要在根文件中添加权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> 

由于例子实在是太小了,整片文章的篇幅不长,所以特意在文章的后面列出所有的文件操作以供大家参考:

一.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(); 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

最新评论