Android -- 保存文件
背景
我们以常见的登录的时候有CheckBox来显示是否保存帐号密码的形式来生动的讲解这个故事。
最后是以txt文档保存,用到的是Java的IO操作。
这个只是粗略的,大家不喜勿喷。
保存文件
- public static void savefile2card(Context context,String username,String password)
- {
- File file = null;
- FileOutputStream fos = null;
- try
- {
- // file = new File("/data/data/com.yuyidong.savefile/savefile.txt");
- file = new File(context.getFilesDir(),"info.txt");
- fos = new FileOutputStream(file);
- fos.write((username+"!!!!"+password).getBytes());
- }
- catch (Exception e)
- {
- // TODO 自动生成的 catch 块
- e.printStackTrace();
- try
- {
- fos.close();
- }
- catch (IOException e1)
- {
- // TODO 自动生成的 catch 块
- e1.printStackTrace();
- }
- }
- }
读取文件
- public static Map<String,String> getSaveFile(Context context)
- {
- File file =new File(context.getFilesDir(),"info.txt");
- try
- {
- FileInputStream fis = new FileInputStream(file);
- BufferedReader br = new BufferedReader(new InputStreamReader(fis));
- String str = br.readLine();
- String[] infos = str.split("!!!!");
- Map<String,String> map = new HashMap<String, String>();
- map.put("username",infos[0]);
- map.put("password", infos[1]);
- br.close();
- return map;
- }
- catch (Exception e)
- {
- // TODO 自动生成的 catch 块
- e.printStackTrace();
- return null;
- }
- finally
- {
- }
- }
主程序
- public class MainActivity extends Activity {
- private Button button;
- private CheckBox check;
- private EditText usernameText;
- private EditText passwordText;
- private String username;
- private String password;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- button = (Button) findViewById(R.id.button);
- check = (CheckBox) findViewById(R.id.check);
- usernameText = (EditText) findViewById(R.id.username);
- passwordText = (EditText) findViewById(R.id.password);
- button.setOnClickListener(new buttonListener());
- Map<String, String> map = read.getSaveFile(this);
- usernameText.setText(map.get("username"));
- passwordText.setText(map.get("password"));
- }
- class buttonListener implements OnClickListener
- {
- @Override
- public void onClick(View v) {
- // TODO 自动生成的方法存根
- username = usernameText.getText().toString();
- password = passwordText.getText().toString();
- System.out.println(username+"~!!~"+password);
- if(check.isChecked())
- {
- save.savefile2card(MainActivity.this, username, password);
- }
- }
- }
我是天王盖地虎的分割线
源代码:http://pan.baidu.com/s/1dD1Qx01
saveFile.zip
转载请注明出处:http://www.cnblogs.com/yydcdut/p/3708964.html
Android -- 保存文件的更多相关文章
- android 保存文件的各种目录列表
一般的,我们可以通过context和Environment来获取要保存文件的目录 ($rootDir) +- /data -> Environment.getDataDirectory() | ...
- [android] 保存文件到手机内存
/*****************2016年5月4日 更新*******************************/ 知乎:Android 没有沙盒保护机制吗,WhatsApp 信息为何可被随 ...
- android保存文件到SD卡中
想把文件保存到SD卡中,一定要知道SD卡的路径,有人说可以用File explore来查看,这种方法不太好,因为随着android版本的升级,SD卡的路径可能会发生改变.在1.6的时候SD的路径是/s ...
- [android] 保存文件到SD卡
/****************2016年5月4日 更新*****************************/ 知乎:为什么很多Android应用要把文件写到/sdcard目录下而不是写到/d ...
- 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)
1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...
- Android 读取和保存文件(手机内置存储器)
1:activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/androi ...
- 【Android Developers Training】 25. 保存文件
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- Android Developers:保存文件
Android使用一个和其它平台基于硬盘文件系统相似的文件系统.这个课程描述了如何和在Android文件系统使用File APIs读和写文件. 一个File对象适用于读或者写从头到尾没用中断的大型数据 ...
- Android学习笔记——保存文件(Saving Files)
本人邮箱:JohnTsai.Work@gmail.com,欢迎交流讨论. 欢迎转载,转载请注明网址:http://www.cnblogs.com/J ...
随机推荐
- 常用的Jquery工具方法
一.根据后端动态字段,如何把驻点输出在页面上?1.可以提前写好css,设置li的宽度,在页面中通过模板引擎语法动态加载不同的className.2.可以根据驻点个数和位置,用jquery去动态计算赋值 ...
- web服务端安全之权限漏洞
一.权限漏洞 访问控制是指用户对系统所有访问的权限控制,通常包含水平权限,和垂直权限. 水平越权:同一角色级别的用户之间所产生的问题,如A用户可以未授权访问B用户的数据: 垂直越权:不同角色级别的用户 ...
- rest framework 类 继承图
- Pipeline和FeatureUnion
注:本文是人工智能研究网的学习笔记 Pipeline:chaining(链接)estimators Pipeline可以用于把多个estimators级联合成一个estimator.这么做的原因是考虑 ...
- 如何破解安卓App
韩梦飞沙 yue31313 韩亚飞 han_meng_fei_sha 313134555@qq.com 如何破解安卓App
- bzoj 5210(树链刨分下做个dp)
5210: 最大连通子块和 Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 211 Solved: 65[Submit][Status][Discus ...
- bzoj 4242 水壶 (多源最短路+最小生成树+启发式合并)
4242: 水壶 Time Limit: 50 Sec Memory Limit: 512 MBSubmit: 1028 Solved: 261[Submit][Status][Discuss] ...
- POJ 1654 Area 计算几何
#include<stdio.h> #include<string.h> #include<iostream> #include<math.h> usi ...
- Git_工作区和暂存区
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory):就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工 ...
- JS对象与PHP对象的对比
一.对象的创建与访问 1.JS对象的创建与访问 //方式一(通过内置构造函数创建后添加属性) var obj = new Object(); obj.name = 'Lucy'; //通过点添加属性 ...