在内部存储写文件

在Android中读写文件

手机的存储结构:
  • RAM:运行内存,相当于电脑的内存
  • ROM:内部存储空间,相当于电脑的硬盘
  • SD存储卡:外部存储空间,相当于电脑的移动硬盘
    内部存储路径

  • 所有安装至手机的应用都会在data/data目录下生成一个包名文件夹,这个文件夹就是内部存储的路径(内部存储不用权限)。
    示例代码如下(XML文件省略,这个将登陆信息写到文件中)

package com.linsen.writefile;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.os.Build;

public class MainActivity extends Activity {
    EditText et_username;    //定义用户名
    EditText et_password;    //定义密码
    CheckBox cb_remember;    //定义文本框
    Button bt_login;         //定义登录按钮
    FileOutputStream fos;    //定义输出流

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_writefile);
        et_username = (EditText) findViewById(R.id.et_username);
        et_password = (EditText) findViewById(R.id.et_password);
        bt_login = (Button) findViewById(R.id.bt_login);

        //点击登录按钮,登录事件
        bt_login.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                 //获取到用户名和密码
                String username = et_username.getText().toString();
                String password = et_password.getText().toString();

                cb_remember = (CheckBox) findViewById(R.id.cb_remember);
                //如果文本框被选中,保存用户名和密码
                if(cb_remember.isChecked()){
                    File file = new File("data/data/com.linsen.writefile/userinfo.txt");
                    try {
                        fos = new FileOutputStream(file);
                        fos.write((username + "&&" + password).getBytes());
                    } catch (FileNotFoundException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }finally{
                        try {
                            if(fos != null){
                                fos.close();
                                fos = null;
                            }
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }
                }

            }
        });      
    }


}
阅读更多
文章标签: android
个人分类: android
上一篇activity之间的跳转与数据传递
下一篇SpringMVC的几大优势
想对作者说点什么? 我来说一句

存储Webview的缓存到SD卡上

2014年03月27日 100KB 下载

没有更多推荐了,返回首页

关闭
关闭