手机内存卡转化linux,Android 往手机内存卡上存储用户名与密码的操作

当大家 用Android 应用 操作时,会发现有很多应用要登陆名和密码,而且,它们都能记住密码,当你退出 ,再次登陆时,你们帐号密码会自动添加上去。

例:

b524458810da3216aae146559293dad4.png

布局文件 相信都能做出来 就不一一介绍 了。

下面直接来正文。

创建一个LoginActivity  文件

public class LoginActivity extends Activity { // 声明 获取的用户名与密码的组件

public EditText edit_name, edit_pass;

// 声明登陆按钮对象

public Button btn_login;

// 声明CheckBox组件对象

public CheckBox box_remember;

// 创建业务对象

public FileService fileService; @Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);  // 设置显示视图

setContentView(R.layout.activity_login);  // 实例化业务对象

fileService = new FileService(this);  // 根据id名称获取相应组件对象

edit_name = (EditText) findViewById(R.id.name_value);

edit_pass = (EditText) findViewById(R.id.pass_value);

btn_login = (Button) findViewById(R.id.but);

box_remember = (CheckBox) findViewById(R.id.cobx);  // 给按钮注册事件

btn_login.setOnClickListener(new MyOnClickListener());  // 回显数据

Map map = fileService.readFile("private.txt");

if (map != null) {

edit_name.setText(map.get("name"));

edit_pass.setText(map.get("pass"));

} } @Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.login, menu);

return true;

} // 内部类

class MyOnClickListener implements View.OnClickListener {

@Override

public void onClick(View v) {

int id = v.getId();  // 判断当前点击组件是否是 按钮

if (id == btn_login.getId()) {    // 获取用户名与密码

String name = edit_name.getText().toString();

String pass = edit_pass.getText().toString();    // 判断用户名与密码是否为空

if (TextUtils.isEmpty(name) || TextUtils.isEmpty(pass)) {

Toast.makeText(LoginActivity.this, "用户名或者密码不能为空",

Toast.LENGTH_LONG).show();

return;

} else {    // 如果记住密码勾选上了

if (box_remember.isChecked()) {

// 进行保存

// 调用业务对象的业务方法

LoginActivity.this.fileService.saveToRom(name, pass,

"private.txt");

Toast.makeText(LoginActivity.this, "用户名和密码需要保存",

Toast.LENGTH_LONG).show();    } else {

// 不保存

Toast.makeText(LoginActivity.this, "用户名和密码不需要保存",

Toast.LENGTH_LONG).show();

}    }  }  } }}    public class FileService {

//上下方对象

public Context context;

public FileService(Context context){

this.context = context;

}

/**

* 住手机内存卡上存储 用户名与密码的操作

*

*

*/

public boolean saveToRom(String name,String pass,String fileName){

//上下文对象的api

try {

//通过 openFileOutput()方法获取一个文件 的输出流对象

FileOutputStream fos = context.openFileOutput(fileName, Context.MODE_PRIVATE);

//拼接用户名与密码

String result = name + ":" +pass;

//写入

fos.write(result.getBytes());

fos.flush();

fos.close();

} catch (Exception e) {

e.printStackTrace();

return false;

}

return true;

}

//读取数据操作

public Map readFile(String fileName){

Map map = null;

try {

FileInputStream fis = context.openFileInput(fileName);

String value = StreanTools.getValue(fis);

String values[] = value.split(":");

if(values.length >0){

map = new HashMap();

map.put("name", values[0]);

map.put("pass", values[1]);

}

} catch (Exception e) {

e.printStackTrace();

}

return map;

} }    public class StreanTools {

public static String getValue(FileInputStream fis)throws Exception{

//字节 流输出流对象

ByteArrayOutputStream stream = new ByteArrayOutputStream();

byte[] buffer = new byte[1024];

int length = -1;

while((length = fis.read(buffer)) != -1){

stream.write(buffer, 0, length);

}

stream.flush();

stream.close();

String value = stream.toString();

return value;

}}

0b1331709591d260c1c78e86d0c51c18.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/422041.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mplayer 音频解码分析

一.序 还是按部就班的来,这次主要分析一下Mplayer中音频解码流程,特别说明一下,这里 的音频解码包括后面会说的视频解码统统不涉及到具体的格式和解码算法,如果大伙对具 体文件格式和解码感兴趣可以在网上找相关资料看看~也可以留…

Linux格式化sd卡博客,linux设备驱动那点事儿之SD卡驱动理论篇

一.SD/MMC卡介绍1.1.什么是MMC卡MMC:MMC就是MultiMediaCard的缩写,即多媒体卡。它是一种非易失性存储器件,体积小巧(24mm*32mm*1.4mm),容量大,耗电量低,传输速度快,广泛应用于消费类电子产品中。1.2.什么是SD卡SD&…

SQL Server 2008 数据库同步的两种方式 (发布、订阅)

通过SQL JOB的方式对数据库的同步,这一节作为上一节的延续介绍通过发布订阅的方式实现数据库之间的同步操作。发布订阅份为两个步骤:1、发布。2、订阅。首先在数据源数据库服务器上对需要同步的数据进行发布,然后在目标数据库服务器上对上述发…

前端学习(619):变量的小案例二

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><script>//请输入姓名…

python linux alias,linux命令:alias

alias命令简介&#xff1a;此个命令用于命令别名&#xff0c;在shell中定义的别名仅在当前shell生命周期中有效&#xff1b;别名的有效范围仅为当前shellj进程&#xff1b;要想别名永久有效&#xff0c;必须把别名定义在别名配置文档中(/root/.bashrc---/root表示当前用户的家目…

UITabBarController

/*UITabBarController//实例化三个controllerMyViewController1 *vc1 [[MyViewController1 alloc]init];MyViewController2 *vc2 [[MyViewController2 alloc]init];// MyViewController3 *vc3 [[MyViewController3 alloc]init];//实例化一个导航,导航管理vc2&#xff0c;vc3…

【eoe特刊】第二十七期 OpenGL ES学习及项目解析

经过一个月征稿、编辑&#xff0c;新的一版特刊终于出炉了。 本次特刊的制作&#xff0c;改变以往的制作方式&#xff0c;完全取自网友的独自的风格。 在只有一个主题的前提下&#xff0c;完全是通过社区的热心的网友&#xff0c;根据自己的想法&#xff0c;自行设计&#x…

Linux如何禁止集成显卡,Ubuntu中禁用独显只用集显的方法

新装了ubuntu 12.04 Beta。还不错&#xff0c;就是双显卡问题。显卡&#xff1a;intel i3集成显卡和ati 5650。以前装了ati 驱动的话&#xff0c;若BIOS里不禁用集显就不能进入ubuntu&#xff0c;禁用了集显进win7又不能用集显&#xff0c;很是麻烦。用了那个git acpi_call禁有…

linux ubuntu技术支持电话,Ubuntu 17.04 将在1月13日结束技术支持

Canonical今天宣布&#xff0c;将在下周1月13日终止对Ubuntu 17.04 “Zesty Zapus”操作系统提供的支持。去年4月13日推出的Ubuntu 17.04是一款功能强大的内部和外部版本&#xff0c;运行最新的(当时)稳定的Linux 4.10内核系列&#xff0c;并以最新的基于Mesa 17.0和X.Org Serv…

前端学习(623):交换两个变量的值

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>交换两个变量的值</title> </head> <…

realloc invalid pointer错误解析

realloc invalid pointer错误 char* temp(char*) realloc(src,sizeof(char)*100); 如上面这行代码&#xff0c;可能会出现标题中的错误。错误原因是因为src指向的不是NULL或堆中的地址。 具体的就是realloc函数要求src为下面两种情况 1.srcNULL 2.src指针必须是malloc(), callo…

Linux的使用和认识实验,通过一个小实验认识Linux vDSO

这里不再解释vDSO的概念&#xff0c;而直接谈其意义&#xff1a;vDSO类似一个信息公告板&#xff0c;用户可以直取所需&#xff0c;而无需为此办理任何手续。vDSO相当于内核直接暴露出来的一个C库&#xff0c;作为GLIBC的补充。…类似gettimeofday之类的调用&#xff0c;每次都…

linux 漏洞数量,Debian Linux被列为过去20年漏洞数量最多的操作系统

1999 至 2019 年间&#xff0c;研究人员共发现了 Debian Linux 中的 3067 个安全漏洞。至于 Windows 平台&#xff0c;Server 2008 以 1421 个安全漏洞位列第一。Android 和 Linux 内核分别以 2563 和 2357 个漏洞排名第二和第三&#xff0c;macOS 以 2212 个漏洞排名第四。然而…

请问这博客能有几种方便写法?

好像这博客园不如网易写博客方便&#xff01; 网易博客支持一键写博客&#xff0c;这点能方便我收集网络资源&#xff0c;以便后续查阅和梳理。 网易支持word写博客&#xff0c;图文并茂。 支持邮件写博客等等&#xff0c;都相当方便&#xff01;&#xff01; 转载于:https://w…

监测ASP.NET MVC 网站

使用MiniProfiler调试ASP.NET MVC网站性能&#xff0c;MiniProfiler可以很好的处理网站后端每个处理时间的事件&#xff0c;但是MiniProfiler是无法远程做监测的动作&#xff0c;MiniProfiler只能够监测本地端的动作&#xff0c;所以MiniProfier比较适合开发期间使用。 在开发A…