File存储

来源:互联网 发布:宏业斯维尔软件 编辑:程序博客网 时间:2024/05/16 12:05
用来访问本应用程序的数据文件夹下的IO流
下面程序给定文件名,进行读写操作

读操作:

private String read(){            try {                //打开文件的输入流                FileInputStream fis = openFileInput(FILE_NAME);                byte[] buff = new byte[1024];                int hasRead = 0;          //记录每次循环读取的长度                StringBuilder sb = new StringBuilder();                while((hasRead=fis.read(buff))!=-1){                    sb.append(new String(buff,0,hasRead));                }                return sb.toString();            }catch (Exception e){                e.printStackTrace();            }            return null;        }
写操作:

 private void write(String content){            try{                //以追加模式打开文件输出流                FileOutputStream fos = openFileOutput(FILE_NAME,MODE_APPEND);                //将FileOutputStream包装成PrintStream                PrintStream ps = new PrintStream(fos);                ps.println(content);                ps.close();            }catch (Exception e){                e.printStackTrace();            }        }

界面设置两个按钮,两个编辑框,一个用来输入要保存的数据,一个用来显示读取的数据:

final String FILE_NAME = "/com.lune.io/1.txt";    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        Button read = (Button)findViewById(R.id.read);        Button write = (Button)findViewById(R.id.write);        final EditText edit1 = (EditText)findViewById(R.id.edit1);        final EditText edit2 = (EditText)findViewById(R.id.edit2);        write.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                write(edit1.getText().toString());                edit1.setText("");            }        });        read.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                edit2.setText(read());            }        });    }





0 0
原创粉丝点击