io_file
来源:互联网 发布:arch linux 龙芯 编辑:程序博客网 时间:2024/06/16 12:23
MainActivity.java
package com.example.io_file;import java.io.File;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.view.View;import android.view.View.OnKeyListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;public class MainActivity extends Activity { private EditText mEditT_keyword; private TextView mTextV_resule; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mEditT_keyword = (EditText) findViewById(R.id.et_keyword); mTextV_resule = (TextView) findViewById(R.id.iv_result); mEditT_keyword.setOnKeyListener(new OnKeyListener() {// 每次键入字符时候都会调用这个方法 @Override public boolean onKey(View v, int keyCode, KeyEvent event) { // TODO Auto-generated method stub String keyword = ""; keyword = mEditT_keyword.getText().toString(); if(keyword.equals("")){ mTextV_resule.setText("请输入文件名"); }else{ mTextV_resule.setText(searchFile(keyword)); } return false; } }); }// 封装搜索类 private String searchFile(String keyword){ String result = "";// 创建一个带有"/"uri的file,listfiles返回一个带有"/"的file数组 File[] file = new File("/").listFiles();// 相当于for(int i=0;i<file.length;i++){// File f = (File)file.get(i);// } for(File f:file ){// 搜索到名字带有keyword字符的文件,如果找不到,则返回-1; if(f.getName().indexOf(keyword)>=0){// 将f文件的路径添加result中, result+=f.getPath()+"\n"; } } if(result.equals("")){ result="找不到文件"; } return result; } }
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <EditText android:id="@+id/et_keyword" android:layout_width="match_parent" android:layout_height="wrap_content"/> <TextView android:id="@+id/iv_result" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout>
0 0