Heim  >  Artikel  >  Java  >  Android durchsucht alle Ordner und Unterverzeichnisse nach Dateien

Android durchsucht alle Ordner und Unterverzeichnisse nach Dateien

高洛峰
高洛峰Original
2017-01-17 15:08:441504Durchsuche

Das Beispiel in diesem Artikel zeigt Ihnen, wie Android alle Ordner und Unterverzeichnisse durchsucht, um nach Dateien für Ihre Referenz zu suchen. Der spezifische Inhalt lautet wie folgt:

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>

Das Obige ist der gesamte Inhalt dieses Artikels Jedermanns Studie und ich hoffe, dass Sie die chinesische PHP-Website unterstützen.

Weitere verwandte Artikel über Android, das alle Ordner und Unterverzeichnisse durchsucht, um nach Dateien zu suchen, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:UUID-Generierung in JavaNächster Artikel:UUID-Generierung in Java