首页 > 系统 > Android > 正文

Android遍历所有文件夹和子目录搜索文件

2019-12-12 05:55:42
字体:
来源:转载
供稿:网友

本文实例为大家分享了android遍历所有文件夹和子目录来搜索文件,供大家参考,具体内容如下

java代码:

import java.io.File;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;public class ShuosouwenjianActivity extends Activity implements OnClickListener {      private File file;   private String path;   private String info;   private String key; //关键字   private TextView result; // 显示结果   private EditText et; // 编辑view   private Button search_btn; // button view      @Override  public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.main);       result = (TextView)findViewById(R.id.TextView_Result);     et = (EditText)findViewById(R.id.key);     search_btn = (Button)findViewById(R.id.button_search);     // file = new File(Environment.getExternalStorageDirectory().getPath());     file = new File("/sdcard/");     info = getString(R.string.info);          search_btn.setOnClickListener(this);   }       @Override   public void onClick(View v) {     // TODO Auto-generated method stub     path = "";     result.setText("");     key = et.getText().toString();     BrowserFile(file);   }      public void BrowserFile(File fileold) {     if (key.equals("")) {       Toast.makeText(this, getString(R.string.pleaseInput), Toast.LENGTH_LONG).show();     } else {      search(fileold);       if (result.getText().equals("")) {         Toast.makeText(this, getString(R.string.notFound), Toast.LENGTH_SHORT).show();       }     }   }   private void search(File fileold)  {   try{ File[] files=fileold.listFiles(); if(files.length>0) {   for(int j=0;j<files.length;j++)   {  if(!files[j].isDirectory())  {  if(files[j].getName().indexOf(key)> -1)  {  path += "/n" + files[j].getPath();     result.setText(info+path);     //shuju.putString(files[j].getName().toString(),files[j].getPath().toString());  }  }  else{  this.search(files[j]);  }   } } }   catch(Exception e)   {      }  }}

MAIN.XML代码:

<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"   android:orientation="vertical"   android:layout_width="fill_parent"   android:layout_height="fill_parent"   android:id="@+id/widget0"   >    <Button   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:id="@+id/button_search"   android:layout_x="253px"   android:layout_y="5px"   android:text="@string/toSearch" /> <EditText   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:id="@+id/key"  android:text="821077962.db"   /> <TextView   android:layout_width="fill_parent"   android:layout_height="370px"   android:id="@+id/TextView_Result"   android:layout_x="0px"   android:layout_y="60px" /> </AbsoluteLayout>

strings.xml代码:

<?xml version="1.0" encoding="utf-8"?> <resources>   <string name="hello">Hello World, Activity07!</string>   <string name="app_name">文件搜索</string>   <string name="toSearch">搜索</string>   <string name="info">系统SDCard目录文件路径:/n</string>   <string name="pleaseInput">请输入关键字!</string>   <string name="notFound">SD卡中没有相关文件!!</string>   <string name="pathError">读取路径出错!!</string> </resources> 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表