【学习笔记】day2数据存储和界面展现第一天 11_api获取外部存储的真实路径 12_检查外部存储状态
2016-03-04 00:51
597 查看
Environment.getExternalStorageDirectory() 获取外部存储路径访问外部存储所需权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>判断SD卡是否可用:
//MEDIA_REMOVED:sd卡不存在 //MEDIA_UNMOUNTED:sd卡存在,但是没有挂载 //MEDIA_CHECKING:sd卡正在遍历 //MEDIA_MOUNTED:sd卡可用 //MEDIA_MOUNTED_READ_ONLY:sd卡可用,但是只读 if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
package com.itheima.rwinrom;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.InputStreamReader;import com.itheima.rwinsd.R;import android.os.Bundle;import android.os.Environment;import android.app.Activity;import android.content.Context;import android.view.Menu;import android.view.View;import android.widget.CheckBox;import android.widget.EditText;import android.widget.Toast;public class MainActivity extends Activity {private EditText et_name;private EditText et_pass;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);et_name = (EditText) findViewById(R.id.et_name);et_pass = (EditText) findViewById(R.id.et_pass);readAccount();}private void readAccount() {// File file = new File("sdcard/info.txt");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_pass.setText(s[1]);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}public void login(View v){//获取用户输入的账号密码String name = et_name.getText().toString();String pass = et_pass.getText().toString();CheckBox cb = (CheckBox) findViewById(R.id.cb);//判断选框是否选中if(cb.isChecked()){// File file = new File("sdcard/info.txt");//MEDIA_REMOVED:sd卡不存在 //MEDIA_UNMOUNTED:sd卡存在,但是没有挂载 //MEDIA_CHECKING:sd卡正在遍历 //MEDIA_MOUNTED:sd卡可用 //MEDIA_MOUNTED_READ_ONLY:sd卡可用,但是只读 if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//返回一个File对象,封装了外部存储的真实路径File file = new File(Environment.getExternalStorageDirectory(), "info.txt");try {FileOutputStream fos = new FileOutputStream(file);//把账号密码写入本地文件fos.write((name + "&&" + pass).getBytes());fos.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}else{Toast.makeText(this, "SD卡不可用哟亲(づ ̄ 3 ̄づ", 0).show();}}// System.out.println("登录成功");//创建吐司对话框Toast t = Toast.makeText(this, "登录成功", 0);//显示对话框t.show();}}
相关文章推荐
- 数据库表转换成javaBean对象小工具
- [FAQ07421] 待机时,怎么看AP每次wake up起来的时长
- [FAQ09541] [Power]待机电流问题,如何查找EINT唤醒源
- [FAQ09542] [Power]待机电流问题,如何查找wakelock
- [FAQ08317] android apk 的root 权限和USB adb 权限的区别
- [FAQ03042] 如何编译MTK的模拟器
- 小组级git服务器搭建
- Git使用参考
- 对操作系统的思考
- apache 花生壳 搭建个人网站 搭建实录
- 彻底解决Ubuntu上压缩包乱码问题
- ubuntu 安装 flash player
- 解决Ubuntu 下Gedit中文乱码问题
- Android无法真正睡眠:服务广播插件等仍激活消耗CPU造成耗电快
- 视频播放界面智能暂停功能
- [FAQ05286] [Power] 如果抓取功耗问题 log
- [FAQ03776] [Power]关于RTC唤醒系统问题
- [FAQ04546] [power]休眠的过程中被CCIF_MD唤醒的状况分析
- [FAQ03519] [Power]关于待机平均功耗高的测试以及自行判断注意事项
- LeetCode : Add Two Numbers [java]