我是靠谱客的博主 激昂铃铛,最近开发中收集的这篇文章主要介绍存储当时android,Android之外部存储(SD卡),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

*手机的外部存储空间,这个我们可以理解成电脑的外接移动硬盘,U盘也行。所有的Android设备都有两个文件存储区域:“内部”和“外部”存储器。这两个名称来自早期的Android,当时大多数设备都提供内置的固定的内存(内置存储器)即ROM中的内部存储,外加一个可移动的存储介质,如micro SD卡(外部存储器)。但也有些设备把固定不变的存储空间分成“内部”和“外部”两部分,这样即使没有可移动的存储介质,也总会有两个存储空间,并且不管外部存储器是可移动的,还是固定的,API的行为是相同的。

* 路径: /mnt/sdcard/

*Environment类

getExternalStorageDirectory(); // 获取sd卡的路径

getExternalStorageState(); // 获取sd卡的状态

Environment.MEDIA_MOUNTED // 挂载状态

Environment.MEDIA_UNMOUNTED // 卸载状态

* 需要添加读写SD卡的权限

// 检查SD卡是不插入和拔出

public boolean isSdMounted(View view) {

String staus = Environment.getExternalStorageState();

if (Environment.MEDIA_MOUNTED.equals(staus)) {

System.out.println("插入了SD卡");

return true;

} else if (Environment.MEDIA_UNMOUNTED.equals(staus)) {

System.out.println("SD卡被拔出了");

return false;

}

return false;

}

// 获取SD卡的路径

public String getSdPath(View v) {

File file = Environment.getExternalStorageDirectory();

String path = file.getAbsolutePath();

return path;

}

// 获取SD卡可用空间

@SuppressLint("NewApi")

public long getSdFreeSpace(View v) {

File file = Environment.getExternalStorageDirectory();

return file.getFreeSpace();

// 格式化大小

}

package com.example.qq;

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 android.os.Bundle;

import android.app.Activity;

import android.text.TextUtils;

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 EditTextetPwd;

private EditTextetQQ;

private CheckBoxcbRemPwd;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

etPwd = (EditText) findViewById(R.id.et_pwd);

etQQ = (EditText) findViewById(R.id.et_qq);

cbRemPwd = (CheckBox) findViewById(R.id.cb_rem_pwd);

readData();

}

/**

* 从文件中读取数据显示在界面上

*/

private void readData() {

File file = new File("/mnt/sdcard/waibu.txt");

try {

FileInputStream fis = new FileInputStream(file);

BufferedReader br = new BufferedReader(new InputStreamReader(fis));

String text = br.readLine();

String[] content = text.split("==");

String qq = content[0];

String pwd = content[1];

//把QQ号码和密码显示在文本输入框

etQQ.setText(qq);

etPwd.setText(pwd);

br.close();

} catch (Exception e) {

e.printStackTrace();

}

}

/**

* 1. 获取用户输入的QQ号码和密码

* 2. 做非空判断

* 3. 如果用户勾选了复选框,用文件存储密码

*/

public void gelogin(View v){

//System.out.println("点击了按钮");

String pwd = etPwd.getText().toString().trim();

String qq = etQQ.getText().toString().trim();

if(TextUtils.isEmpty(pwd) || TextUtils.isEmpty(qq)){

Toast.makeText(this, "亲,请输入QQ号码或者密码哦 :) ", 0).show();

return;

}

//判断用户是否勾选复选框

boolean checked = cbRemPwd.isChecked();

if (checked) {

//用文件存储密码

try {

File file = new File("/mnt/sdcard/waibu.txt");

FileOutputStream fos = new FileOutputStream(file);

String text = qq+"=="+pwd;

fos.write(text.getBytes());

//释放资源

fos.close();

Toast.makeText(this, "密码存储成功,/mnt/sdcard/waibu.txt", 0).show();

} catch (Exception e) {

e.printStackTrace();

Toast.makeText(this, "存储失败了 :( ", 0).show();

}

}

}

}

最后

以上就是激昂铃铛为你收集整理的存储当时android,Android之外部存储(SD卡)的全部内容,希望文章能够帮你解决存储当时android,Android之外部存储(SD卡)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部