Android开发实现读取Assets下文件及文件写入存储卡的方法

本文实例讲述了Android开发实现读取Assets下文件及文件写入存储卡的方法。分享给大家供大家参考,具体如下:

调用一个反编译的.so文件,查看起加密和解密情况,需要解析上万的数组,而so文件加密解密都是通过Byte来进行,又需要把String字符串转化为 Byte,当把数据直接写在代码中就会提示多Byte数组过大。最后把数组写到Assets文件加下,读取txt文本文件。

读取Assets方法如下:

public String getFromAssets(String fileName) {

String result = "";

try {

InputStream in = getResources().getAssets().open(fileName);

// 获取文件的字节数

int lenght = in.available();

// 创建byte数组

byte[] buffer = new byte[lenght];

// 将文件中的数据读到byte数组中

in.read(buffer);

result = EncodingUtils.getString(buffer, ENCODING);

} catch (Exception e) {

e.printStackTrace();

}

return result;

}

然后

String strEn = getFromAssets("encode.txt");

txt中的文本文件是str,str,str这种形式,然后把

String[] encode1 = strEn.split(",");

通过字符串把 读取的字符串转化成字符串数组。

for(int i=0;i<encode1.length;i++){

sendString = encode1[i];

// sbuf.append(sendString+",");

try {

sendBytes = sendString.getBytes("UTF8");

byte[] s = Base64Encoder.B64Encode(sendBytes);

str = new String(s, "ISO-8859-1");

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

sbuf.append(str);

sbuf.append(",");

}

String.split具有分割数组的作用,它已某一个特殊符号为分界点然后进行数组分割。

再把加密后的字符串写到本地文件。方法如下

public String saveInfo2File(String mString) {

StringBuffer sb = new StringBuffer();

try {

long timestamp = System.currentTimeMillis();

String fileName = "encut" + ".txt";

if (Environment.getExternalStorageState().equals(

Environment.MEDIA_MOUNTED)) {

String spath = Environment.getExternalStorageDirectory()

.getPath() + "/A1/";

File sdir = new File(spath);

if (!sdir.exists())

sdir.mkdirs();

FileOutputStream fos = new FileOutputStream(spath + fileName);

sb.append(mString);

fos.write(sb.toString().getBytes());

fos.close();

}

return fileName;

} catch (Exception e) {

}

return null;

}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android文件操作技巧汇总》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android布局layout技巧总结》、《Android开发入门与进阶教程》、《Android资源操作技巧汇总》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

以上是 Android开发实现读取Assets下文件及文件写入存储卡的方法 的全部内容, 来源链接: utcz.com/z/333451.html

回到顶部