zoukankan      html  css  js  c++  java
  • android 读写SD卡文件

    参考:

    http://www.oschina.net/code/snippet_176897_7336#11699

    写文件:

    private void SavedToText(Context context, String stringToWrite) {
            if (Environment.MEDIA_MOUNTED.equals(Environment
                    .getExternalStorageState())) {
                String foldername = Environment.getExternalStorageDirectory()
                        .getPath() + "/log";
                File folder = new File(foldername);
                if (folder == null || !folder.exists()) {
                    folder.mkdir();
                }
                String fileName = "/locLog" + ".txt";
                File targetFile = new File(foldername + fileName);
                OutputStreamWriter osw;
                try {
                    if (!targetFile.exists()) {
                        targetFile.createNewFile();
                        osw = new OutputStreamWriter(new FileOutputStream(
                                targetFile), "utf-8");
                        osw.write(stringToWrite);
                        osw.close();
                    } else {
                        osw = new OutputStreamWriter(new FileOutputStream(
                                targetFile, true), "utf-8");
                        osw.write("
    " + stringToWrite);
                        osw.flush();
                        osw.close();
                    }
                } catch (Exception e) {
                    // Toast.makeText(context,e.toString(),Toast.LENGTH_LONG).show();
                }
            } else {
                // Toast.makeText(context,"未发现SD卡!",Toast.LENGTH_LONG).show();
            }
    
    }

    读文件:

    private String readFromFile(Context context){
            
            
            if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
                
                String foldername = Environment.getExternalStorageDirectory().getPath()+ "/eryaApp";
                File folder = new File(foldername);
                
                if (folder == null || !folder.exists()) {
                    folder.mkdir();
                }
                
                File targetFile=new File("/sdcard/eryaApp/eryaShoppingList.txt");
                String readedStr="";
                
                 try{
                    if(!targetFile.exists()){
                        targetFile.createNewFile();
                        return "No File error ";
                    }else{
                         InputStream in = new BufferedInputStream(new FileInputStream(targetFile));
                         BufferedReader br= new BufferedReader(new InputStreamReader(in, "UTF-8"));
                         String tmp;
                         
                         while((tmp=br.readLine())!=null){
                             readedStr+=tmp;
                         }
                         br.close();
                         in.close();
                         
                         return readedStr;
                    }
                 } catch (Exception e) {
                        Toast.makeText(context,e.toString(),Toast.LENGTH_LONG).show();
                        return e.toString();
                 }
            }else{
                Toast.makeText(context,"未发现SD卡!",Toast.LENGTH_LONG).show();
                return "SD Card error";
            }
            
        }
  • 相关阅读:
    部署yearning1.3
    git常用指令
    U盘centos7系统安装http://www.augsky.com/599.html
    C语言与SQL SERVER数据库(转)
    C连接MySQL数据库开发之Windows环境配置及测试(转)
    vs2012中添加lib,.h文件方法(原)
    如何用Visual Studio 2013 (vs2013)编写C语言程序 (转)
    Java值传递以及引用的传递、数组的传递!!
    ssh整合需要那些jar
    类加载器
  • 原文地址:https://www.cnblogs.com/sudawei/p/3435523.html
Copyright © 2011-2022 走看看