The example in this article shares with you Android traversing all folders and subdirectories to search for files for your reference. The specific content is as follows
java code:
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 code:
<?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 code:
<?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>
The above is the entire content of this article. I hope it will be helpful to everyone's learning, and I also hope that everyone will support the PHP Chinese website.
For more related articles about Android traversing all folders and subdirectories to search for files, please pay attention to the PHP Chinese website!