读写存储文件中的数据
来源:互联网 发布:金蝶在线软件 编辑:程序博客网 时间:2024/05/21 15:47
有些时候我们需要读取手机存储空间中的数据,做一个小实验进行练习,正如我们登录一个APP的时候可以选择记住密码的样式,然后下次登录的时候就回写保存的数据。
实现的页面:
即我们记住密码后,下次登录回现,,
主要是练习怎样读写文件,(在内部/外部存储中读写文件)
实现代码:
布局文件:activity_main.xml
<?xml version="1.0" encoding="utf-8"?><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" android:padding="10dp" tools:context=".MainActivity"> <EditText android:id="@+id/et_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入账号" /> <EditText android:id="@+id/et_password" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入密码" android:inputType="textPassword" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:orientation="horizontal" android:padding="10dp"> <CheckBox android:id="@+id/checkbox" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="50dp" android:text="记住密码" /> <Button android:id="@+id/bt_login" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="50dp" android:onClick="login" android:text="登录" /> </LinearLayout></LinearLayout>
java代码:MainActivity,java
package com.example.xm.cunchutest;import android.os.Environment;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.text.Editable;import android.view.View;import android.widget.Button;import android.widget.CheckBox;import android.widget.EditText;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;public class MainActivity extends ActionBarActivity { private EditText et_name; private EditText et_password; private CheckBox checkBox; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_name = (EditText) findViewById(R.id.et_name); et_password = (EditText) findViewById(R.id.et_password); checkBox = (CheckBox) findViewById(R.id.checkbox); readAccount(); } public void readAccount() { //File file = new File("data/data/com.example.xm.cunchutest/info.txt"); //返回一个File对象,其路径是:data/data/com.example.xm.cunchutest/files File file = new File(getFilesDir(),"info.txt"); //返回也是一个File对象,然后其路径是:data/data/com.example.xm.cunchutest/cache //File file = new File(getCacheDir(),"info.txt"); //返回一个File对象,其路径是Sd卡的真实路径 //File file = new File(Environment.getExternalStorageDirectory(),"info.txt"); // //判断文件是不是存在,要是存在就读,不存在就不做处理 if (file.exists()) { try { FileInputStream fis = new FileInputStream(file); //把字节流转换成字符流 BufferedReader br = new BufferedReader(new InputStreamReader(fis)); String text = br.readLine(); String[] s = text.split("##"); et_name.setText(s[0]); et_password.setText(s[1]); } catch (Exception e) { e.printStackTrace(); } } } public void login(View view) throws IOException { //获取到账号和密码 String name = et_name.getText().toString(); String password = et_password.getText().toString(); //判断是否选中 if (checkBox.isChecked()) { //File file = new File("data/data/com.example.xm.cunchutest/info.txt"); //getFileDir():获取到一个File对象,其路径是data/data/com.example.xm.cunchutest/files File file = new File(getFilesDir(),"info.txt"); FileOutputStream fos = null; try { fos = new FileOutputStream(file); fos.write((name + "##" + password).getBytes()); } catch (Exception e) { e.printStackTrace(); } finally { fos.close(); } } System.out.print("登录成功"); }}
0 0
- 读写存储文件中的数据
- 读写存储文件中的数据 二
- 数据存储&&文件读写
- iOS iPhone 开发中的文件读写及数据存储
- iOS iPhone 开发中的文件读写及数据存储
- 数据存储之文件读写
- cnn_AVS_proj中的文件数据读写
- android 数据存储操作3:文件读写
- 读写内部存储的文件数据
- 读写内部存储的文件数据
- 数据存储—读写内部存储的文件数据
- IOS iPhone 开发中的文件读写及数据存储(一)
- IOS iPhone 开发中的文件读写及数据存储(一)
- IOS iPhone 开发中的文件读写及数据存储(一)
- WP8_读写XML WP8数据存储--独立存储文件
- Android本地数据存储之.txt文件存储读写
- 文件的读写,sd卡存储数据,SharedPerference存储
- Android 中的数据存储----文件存储
- twisted下使用网络连接池
- S2SH 利用ajaxfileupload实现图片无刷新上传
- android下dev设备的权限问题
- jquery源码学习1
- HDU 2509 Be the Winner
- 读写存储文件中的数据
- windos基本命令 查看指定端口,将指定进程杀死
- Spymemcached操作队列分析
- Asp.net中文本框全选
- 专题二1013
- linux常用命令的分类整理
- SNMP协议详解
- TCP协议Nagle算法和Delayed ACK相互影响实例分析
- tomcat 部署一个简单的 Java Servlet