背景                                                                                            

我们以常见的登录的时候有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 -- 保存文件的更多相关文章

  1. android 保存文件的各种目录列表

    一般的,我们可以通过context和Environment来获取要保存文件的目录 ($rootDir) +- /data -> Environment.getDataDirectory() | ...

  2. [android] 保存文件到手机内存

    /*****************2016年5月4日 更新*******************************/ 知乎:Android 没有沙盒保护机制吗,WhatsApp 信息为何可被随 ...

  3. android保存文件到SD卡中

    想把文件保存到SD卡中,一定要知道SD卡的路径,有人说可以用File explore来查看,这种方法不太好,因为随着android版本的升级,SD卡的路径可能会发生改变.在1.6的时候SD的路径是/s ...

  4. [android] 保存文件到SD卡

    /****************2016年5月4日 更新*****************************/ 知乎:为什么很多Android应用要把文件写到/sdcard目录下而不是写到/d ...

  5. 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

    1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...

  6. Android 读取和保存文件(手机内置存储器)

    1:activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/androi ...

  7. 【Android Developers Training】 25. 保存文件

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  8. Android Developers:保存文件

    Android使用一个和其它平台基于硬盘文件系统相似的文件系统.这个课程描述了如何和在Android文件系统使用File APIs读和写文件. 一个File对象适用于读或者写从头到尾没用中断的大型数据 ...

  9. Android学习笔记——保存文件(Saving Files)

              本人邮箱:JohnTsai.Work@gmail.com,欢迎交流讨论.                 欢迎转载,转载请注明网址:http://www.cnblogs.com/J ...

随机推荐

  1. [ 转载 ]学习笔记-svn用法详解

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  2. POJ2104 K-th Number 不带修改的主席树 线段树

    http://poj.org/problem?id=2104 给定一个序列,求区间第k小 通过构建可持久化的点,得到线段树左儿子和右儿子的前缀和(前缀是这个序列从左到右意义上的),然后是一个二分的ge ...

  3. 处理QMenu的triggered信号时遇到的一个问题

    最近,在一个Qt程序中使用QMenu类时,遇到了一个小问题,特记录下.首先,我模仿一下问题出现的场景:假设我在做一个高大上的XX管理系统,比如说:学生信息管理系统.在这个系统中,学生的各项信息(比如: ...

  4. HTTPClient实现免登陆请求(带cookie请求)

    背景: 使用httpClient请求某登录型网站,模拟一个操作,一般步骤一个httpclient模式登录->httpClient模拟操作: 此时发现,每次操作都需要进行一次登录,极其浪费时间,是 ...

  5. 获取数据库连接对象(线程ThreadLocal)

    /** * 负责数据库连接定义的程序类 * 该类可以负责所有操作线程的数据库连接,利用get()方法可以获得连接对象 */ public class DatabaseConnection { priv ...

  6. PUSH MESSAGE 云控等交互类测试业务的自动化

    针对的业务: 1. PUSH消息,即由云端服务向客户端推送消息 2. MESSAG消息,即用户间消息.用户群消息和聊天室消息 上干货,框架见下图:

  7. jQuery动画高级用法(上)——详解animation中的.queue()函数

    如果你拿着一个疑问去找专业人士寻找答案,那么你的一个疑问会变成三个,因为他会用另外两个令你更加一头雾水的名词来解释你的这个疑问. 我想这是大多数,包括我在内,IT人在学习过程中碰到的最大问题.当你有一 ...

  8. solaris 常用软件安装

    http://blog.csdn.net/cuterhei/article/category/1259722

  9. HTTP协议中 POST和GET的区别

    http://blog.csdn.net/whuslei/article/details/6667095 权威点的说明请参考:http://www.cs.tut.fi/~jkorpela/forms/ ...

  10. [MySql]默认密码的查找与修改

    摘要 在安装成功后,怎么找到mysql的默认密码,折腾很长时间,最后发现在安装的过程中,产生了一个默认的随机密码. 密码 在mysql安装目录生成的data文件下,查找xxx.err的文件如图: 用记 ...