• Android从raw、assets、SD卡中获取资源文件内容


    先顺带提一下,raw文件夹中的文件会和project一起经过编译,而assets里面的文件不会~~~  
    另外,SD卡获取文件需要权限哦!
    1.   //从res文件夹中的raw 文件夹中获取文件并读取数据  
    2.     public String getFromRaw(){  
    3.         String result = "";  
    4.             try {  
    5.                 InputStream in = getResources().openRawResource(R.raw.data);  
    6.                 //获取文件的字节数  
    7.                 int lenght = in.available();  
    8.                 //创建byte数组  
    9.                 byte[]  buffer = new byte[lenght];  
    10.                 //将文件中的数据读到byte数组中  
    11.                 in.read(buffer);  
    12.                 result = EncodingUtils.getString(buffer, "UTF-8");  
    13.             } catch (Exception e) {  
    14.                 e.printStackTrace();  
    15.             }  
    16.             return result;  
    17.     }  
    18.       
    19.     //从assets 文件夹中获取文件并读取数据  
    20.     public String getFromAssets(String fileName){  
    21.         String result = "";  
    22.             try {  
    23.                 InputStream in = getResources().getAssets().open(fileName);  
    24.                 //获取文件的字节数  
    25.                 int lenght = in.available();  
    26.                 //创建byte数组  
    27.                 byte[]  buffer = new byte[lenght];  
    28.                 //将文件中的数据读到byte数组中  
    29.                 in.read(buffer);  
    30.                 result = EncodingUtils.getString(buffer, "UTF-8");  
    31.             } catch (Exception e) {  
    32.                 e.printStackTrace();  
    33.             }  
    34.             return result;  
    35.     }  
    36.     //从SD卡文件夹中获取文件并读取数据

          public static String readFileAsString(String filePath) throws IOException {

      File f=null;

      f= new File(filePath);//这是对应文件路径全名

              StringBuffer fileData = new StringBuffer();

              InputStream in = null;

        try {

          in = new BufferedInputStream(new FileInputStream(f));

        } catch (FileNotFoundException e3) {

          e3.printStackTrace();

        }

              BufferedReader reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));

              

              char[] buf = new char[1024];

              int numRead=0;

              while((numRead=reader.read(buf)) != -1){

                  String readData = String.valueOf(buf, 0, numRead);

                  fileData.append(readData);

              }

              reader.close();

              return fileData.toString();

          }

  • 相关阅读:
    《高等应用数学问题的MATLAB求解》——第4章习题代码
    《高等应用数学问题的MATLAB求解》——第3章习题代码
    《高等应用数学问题的MATLAB求解》——第2章习题代码
    2020年高考数学全国一卷第16题
    LR&PCA&KPCA
    package.json.lock
    Charles 抓 iphone 手机包
    竞赛196
    竞赛197
    js编程语言!!!!
  • 原文地址:https://www.cnblogs.com/riskyer/p/3283557.html
Copyright © 2020-2023  润新知