您的位置:首页 > 移动开发 > Android开发

Android 将asserts文件夹内文件写入SD卡中

2015-10-23 11:15 423 查看
参考:

/article/4814115.html

#######################################################################

private void copyBigDataToSD(String strOutFileName)
{
try {
String path = PATH + "/" + strOutFileName;
InputStream myInput;
OutputStream myOutput = new FileOutputStream(path);
myInput = this.getAssets().open(strOutFileName);
byte[] buffer = new byte[1024];
int length = myInput.read(buffer);
while (length > 0) {
myOutput.write(buffer, 0, length);
length = myInput.read(buffer);
}

myOutput.flush();
myInput.close();
myOutput.close();
} catch (IOException e) {
e.printStackTrace();
}
}


//从assets 文件夹中获取文件并读取数据
public void getFromAssets(String fileName){
try {
File file = new File(PATH, fileName);
if (file.exists()) { //if the file is exist, return
file.delete();
}
file.createNewFile();

InputStream in = getResources().getAssets().open(fileName);
//获取文件的字节数
int lenght = in.available();
//创建byte数组
byte[]  buffer = new byte[lenght];
//将文件中的数据读到byte数组中
in.read(buffer);

FileOutputStream out = new FileOutputStream(file);
out.write(buffer);
out.flush();
out.close();
Log.i(TAG, "------------------------------------load ok " + fileName);
//result = EncodingUtils.getString(buffer, ENCODING);
} catch (Exception e) {
e.printStackTrace();
Log.i(TAG, "--------------------------"+e.getMessage());
}
}


public void getFromAssets(String fileName){
try {
File file = new File(PATH, fileName);
if (file.exists()) { //if the file is exist, return
file.delete();
}
file.createNewFile();
BufferedWriter bw = new BufferedWriter(new FileWriter(file));

InputStreamReader inputReader = new InputStreamReader( getResources().getAssets().open(fileName) );
BufferedReader bufReader = new BufferedReader(inputReader);
String line="";
String Result="";
while((line = bufReader.readLine()) != null) {
Result = line;
Result += "\n";
bw.write(Result);
bw.flush();
}

bw.close();
inputReader.close();
bufReader.close();
Log.i(TAG, "------------------------------------load ok "+fileName);
} catch (Exception e) {
e.printStackTrace();
Log.i(TAG, "--------------------------"+e.getMessage());
}

//     return "can not access assets";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: