1 @Override 2 public void onCreate(Bundle savedInstanceState) { 3 super.onCreate(savedInstanceState); 4 setContentView(R.layout.main); 5 EditText keywordText = (EditText)this.findViewById(R.id.keyword); 6 Button button = (Button)this.findViewById(R.id.button); 7 TextView result = (TextView)this.findViewById(R.id.result); 8 button.setOnClickListener(new Button.OnClickListener() { 9 public void onClick(View v) { 10 String keyword = keywordText.getText().toString(); 11 if (keyword.equals("")) { 12 result.setText("请勿输入空白的关键词!!"); 13 }else { 14 result.setText(searchFile(keyword)); 15 } 16 } 17 }); 18 } 19 20 private String searchFile(String keyword) { 21 String result = ""; 22 File[] files = new File("/").listFiles(); 23 for (File file : files) { 24 if (fike.getName().indexOf(keyword) >= 0) { 25 result += file.getPath() + "\n"; 26 } 27 } 28 if (result.equals("")){ 29 result = "找不到文件!!"; 30 } 31 return result; 32 }
首先,我们需要通过File.listFiles()方法获取文件夹下所有文件或者文件夹的名字,这里的文件夹的路径是"/",也就是根目录。然后我们再通过getPath()逐个获取它们的相对路径。
例子的运行结果如: