Android 中保存数据到文件中

1、在安卓开发中,会遇到保存数据到手机中以及从手机中获取数据的情况

/**
     * 把数据存放到手机内存中
     *
     * @param number
     * @param password
     * @return
     */
    public static boolean saveUserInfo(Context context, String number,
            String password) {

        try {

            // getCacheDir()方法用于获取/data/data/<package name>/cache目录 缓存数据
            // getFilesDir()方法用于获取/data/data/<package name>/files目录

            // 定义路径
            // String path = "/data/data/com.example.qqlogin/qqlogin.txt";

            File filesDir = context.getFilesDir();
            // 动态获得路径
            File file = new File(filesDir, "qqlogin.txt");

            // 输出流,把数据输出到文件中
            FileOutputStream fos = new FileOutputStream(file);
            // 要写入的数据
            String data = number + "##" + password;

            // 写入字节流
            fos.write(data.getBytes());

            // 清空缓存
            fos.flush();
            // 关闭流
            fos.close();

            return true;
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return false;
    }

    /**
     * 从文件中读取数据,并返回出去
     *
     * @return
     */
    public static Map<String, String> getUserInfo(Context context) {
        // String path = "/data/data/com.example.qqlogin/qqlogin.txt";
        // 动态获取文件名
        File filesDir = context.getFilesDir();
        // 动态获得路径
        File f = new File(filesDir, "qqlogin.txt");

        try {
            // 从文件中读取流
            // FileInputStream fis = new FileInputStream(path);
            FileInputStream fis = new FileInputStream(f);
            // 把字节流 转换为 字符串流
            BufferedReader reader = new BufferedReader(new InputStreamReader(
                    fis));
            String text = reader.readLine();
            if (!TextUtils.isEmpty(text)) {
                String[] spilt = text.split("##");
                Map<String, String> userInfoMap = new HashMap<String, String>();
                userInfoMap.put("number", spilt[0]);
                userInfoMap.put("password", spilt[1]);
                return userInfoMap;
            }

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
    }

2、通过SharedPreferences 向手机中写入数据

/**
     * 把数据存放到手机内存中
     *
     * @param number
     * @param password
     * @return
     */
    public static boolean saveUserInfo(Context context, String number,
            String password) {
        try {

            // 文件保存在 /data/data/包名/shared_prefs/itheima28
            SharedPreferences sp = context.getSharedPreferences("aa",
                    context.MODE_PRIVATE);

            // 获得一个编辑对象
            Editor ed = sp.edit();

            // 存放数据
            ed.putString("number", number);
            ed.putString("password", password);
            // 提交数据
            ed.commit();
            return true;

        } catch (Exception e) {

        }

        return false;
    }

    /**
     * 从文件中读取数据,并返回出去
     *
     * @return
     */
    public static Map<String, String> getUserInfo(Context context) {

        try
        {
        // 文件保存在 /data/data/包名/shared_prefs/itheima28
        SharedPreferences sp = context.getSharedPreferences("aa",context.MODE_PRIVATE);
        String number=sp.getString("number", null);
        String password=sp.getString("password", null);

        Map<String,String>  userInfoMap=new HashMap<String, String>();
        userInfoMap.put("number", number);
        userInfoMap.put("password",password);
        return  userInfoMap;
        }
        catch(Exception e)
        {

        }

        return null;
    }
时间: 07-31

Android 中保存数据到文件中的相关文章

android如何保存读取读取文件文件保存到SDcard

android如何保存读取读取文件文件保存到SDcard 19. 三 / android基础 / 没有评论 本文来源于www.ifyao.com禁止转载!www.ifyao.com 上图为保存文件的方法体. 上图为如何调用方法体保存数据. 上面的截图介绍了,文件保存的基本内容. 路径也可以更改. 将内容保存到文件介绍完毕. 本文来源于www.ifyao.com禁止转载!www.ifyao.com 读取文件方法体,将方法返回值传给控件即可. 保存文件的四种操作模式 将文件保存到手机的SDcard路

Java学习(2):将键盘录入的内容保存到指定文件中

要求:保存键盘录入的内容,当键盘输入end时,录入结束. 1 /** 2 * 保存键盘输入,并以end结束 3 * 4 * @author xcx 5 * @time 2017年6月24日下午3:32:50 6 */ 7 public class GetData { 8 9 public static void main(String[] args) throws IOException { 10 String fileName = "d:\\java\\jj\\dd.txt";//

java实现写大量数据到文件中

生成.txt文件 生成.csv文件 生成.xls文件 package com.test; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.text.NumberFormat

dwz中保存数据后回调如何添加自己的回调方法

dwz新增后会自动帮我们进行回调,并且刷新页面,提示成功信息. 但是我们还需要在回调中添加自己的方法. 怎么做呢? 我们可以自定义一个回调函数,然后先完成自己的业务,再调用dwz的回调方法,调用dwz的ajaxDone方法我们可以去源码中拷贝. <div class="pageContent"> <form method="post" action="portalmanage/${msg}.do" class="pag

显示日期和时间,列出所有登录的用户,给出系统的更新时间,最后将所有信息保存到日志文件中

#!/bin/bash d1=`date +%F` d2=`date +%T` num=`cat /etc/passwd |awk -F ':' '{print $7}' |sed -n '/bin\/bash/'p |wc -l` echo "$d1  $d2  $num users" >> /root/date.log

程序中写数据到文件

#include <iostream>#include <iomanip>#include <fstream> using std::ofstream;ofstream fout3("/home/wang/Desktop/teleop_control.txt"); fout3<<twist.linear.x<<" "<< twist.angular.z<<std::endl;

详解用Navicat工具将Excel中的数据导入Mysql中

第一步:首先需要准备好有数据的excel: 第二步:选择"文件"->"另存为",保存为"CSV(逗号分隔)(*.csv)",将excel表另存为csv文档  第三步:(很重要):如果你的数据中有中文,那么需要将CSV文件处理一下,负责会导入失败:用editplus或者其他编辑器(另存时可以选择保存编码的编辑器)打开CSV文件,然后另存为,选择utf-8(你的数据库也是utf-8哦),点击保存. 第四步:开始导入了,使用mysql图形化工具(

VBA 练习-从两个库中调用数据到活动表中

练习VBA Sub 入库() Dim basedb As String, cpdb As String, wb As Workbook, ws As Worksheet, curWs As Worksheet basedb = ThisWorkbook.Path & "\分析数据.xlsx" cpdb = ThisWorkbook.Path & "\成品抽检信息.xlsx" '分析数据库中提取 If Len(Dir(basedb)) = 0 Then

intellij idea中,右键新建文件中添加jsp格式的文件

最近在 学习使用intellij idea,在编写webapp类型的project时,新建中找不到jsp类型,下面是我总结的解决步骤,希望可以帮你解决同样的问题. 按照标注的编号,可以添加到新建的文本类型中去,如果添加后,发现还没有,可以试着重启intellij idea或者电脑,这样应该就有了(我的就是重启之后出现的). 其实在这里找到jsp页面的初始模板后,我们可以根据自己的需要更改,新建jsp页面中的内容,这样新建后的内容,更符合自己的需要,方便使用.