大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > Android技巧 > Android中对SDcard文件读取和保存

Android中对SDcard文件读取和保存

关键词:AndroidSDcard读取保存文件  阅读(653) 赞(12)

[摘要]本文是对Android中对SDcard文件读取和保存的讲解,对学习Android编程技术有所帮助,与大家分享。

背景

一些东西可以存在自己定义的文件里面,这个文件可以在手机中,可以在SD卡中,在这里就主要介绍一下在SD卡中的存储和读取吧~

代码

public class save {
    public static void savefile2card(Context context,String username,String password)
    {
        File file = null;
        FileOutputStream fos = null;
        try 
        {
            if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()))
            {
//    file = new File("/sdcard/info.txt");
                file = new File(Environment.getExternalStorageDirectory(),"info.txt");
                fos = new FileOutputStream(file);
                fos.write((username+"!!!!"+password).getBytes());    
            }
            else
            {
                Toast.makeText(context, "SD木有", Toast.LENGTH_LONG).show();
            }
        } 
        catch (Exception e) 
        {
            // TODO 自动生成的 catch 块
            e.printStackTrace();
            Toast.makeText(context, "Wrong", Toast.LENGTH_LONG).show();
            try 
            {
                fos.close();
            } 
            catch (IOException e1) 
            {
                // TODO 自动生成的 catch 块
                e1.printStackTrace();
            }
        }
    }
}

上面是存的代码,这里面用到了Environment.MEDIA_MOUNTED,查看是否挂载。

public class read {
    public static Map<String,String> getSaveFile(Context context)
    {
        //File file =new File(context.getFilesDir(),"info.txt");
        File file = new File(Environment.getExternalStorageDirectory(),"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
        {
            
        }
        
    }
}

上面是读取的代码,会存就会读了,存得进去那么就读得出来撒~

我是天王盖地虎的分割线

源代码:http://pan.baidu.com/s/1dD1Qx01



相关评论