io_file

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>

你可能感兴趣的:(IO)