Android編程讀取Assets所有文件(遍歷每一個(gè)文件夾)并存入sdcard的方法
本文實(shí)例講述了Android編程讀取Assets所有文件(遍歷每一個(gè)文件夾)并存入sdcard的方法。分享給大家供大家參考,具體如下:
private void CopyAssets(String assetDir, String dir) {
String[] files;
try {
// 獲得Assets一共有幾多文件
files = this.getResources().getAssets().list(assetDir);
} catch (IOException e1) {
return;
}
File mWorkingPath = new File(dir);
// 如果文件路徑不存在
if (!mWorkingPath.exists()) {
// 創(chuàng)建文件夾
if (!mWorkingPath.mkdirs()) {
// 文件夾創(chuàng)建不成功時(shí)調(diào)用
}
}
for (int i = 0; i < files.length; i++) {
try {
// 獲得每個(gè)文件的名字
String fileName = files[i];
// 根據(jù)路徑判斷是文件夾還是文件
if (!fileName.contains(".")) {
if (0 == assetDir.length()) {
CopyAssets(fileName, dir + fileName + "/");
} else {
CopyAssets(assetDir + "/" + fileName, dir + "/"
+ fileName + "/");
}
continue;
}
File outFile = new File(mWorkingPath, fileName);
if (outFile.exists())
outFile.delete();
InputStream in = null;
if (0 != assetDir.length())
in = getAssets().open(assetDir + "/" + fileName);
else
in = getAssets().open(fileName);
OutputStream out = new FileOutputStream(outFile);
// Transfer bytes from in to out
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
in.close();
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android數(shù)據(jù)庫(kù)操作技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
Android編程簡(jiǎn)單實(shí)現(xiàn)撥號(hào)器功能的方法
這篇文章主要介紹了Android編程簡(jiǎn)單實(shí)現(xiàn)撥號(hào)器功能的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Android撥號(hào)器功能的實(shí)現(xiàn)原理、步驟、操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-07-07
自定義視圖view使用Canvas實(shí)現(xiàn)手寫板和涂鴉功能
這篇文章主要介紹了自定義視圖view使用Canvas實(shí)現(xiàn)手寫板和涂鴉功能,這里直接上代碼,里面有詳細(xì)講解和注釋,需要的朋友可以參考下2023-04-04
Android開發(fā)應(yīng)用第一步 安裝及配置模擬器Genymotion
這篇文章主要介紹了Android開發(fā)應(yīng)用第一步,即安裝及配置模擬器Genymotion,感興趣的小伙伴們可以參考一下2015-12-12
解析Android應(yīng)用程序運(yùn)行機(jī)制
這篇文章主要介紹了Android應(yīng)用程序運(yùn)行機(jī)制,有需要的朋友可以參考一下2014-01-01
Android Service(不和用戶交互應(yīng)用組件)案例分析
Service是在一段不定的時(shí)間運(yùn)行在后臺(tái),不和用戶交互應(yīng)用組件,本文將詳細(xì)介紹,需要了解的朋友可以參考下2012-12-12
Android編程實(shí)現(xiàn)GridView控件點(diǎn)擊圖片變暗效果的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)GridView控件點(diǎn)擊圖片變暗效果的方法,簡(jiǎn)單分析了GridView控件事件響應(yīng)及屬性操作的相關(guān)技巧,需要的朋友可以參考下2017-06-06
Android發(fā)送GET與POST請(qǐng)求的DEMO詳解
本篇文章是對(duì)Android發(fā)送GET與POST請(qǐng)求的DEMO進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
android 實(shí)現(xiàn)在照片上繪制涂鴉的方法
今天小編就為大家分享一篇android 實(shí)現(xiàn)在照片上繪制涂鴉的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
Android編程ProgressBar自定義樣式之動(dòng)畫模式實(shí)現(xiàn)方法
這篇文章主要介紹了Android編程ProgressBar自定義樣式之動(dòng)畫模式實(shí)現(xiàn)方法,涉及Android動(dòng)畫模式的布局技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-10-10

