Adnroid提高效率之资源移动
生活随笔
收集整理的這篇文章主要介紹了
Adnroid提高效率之资源移动
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在做開發過程中,有時候,需要將某幾個,或者某個資源從一個地方拷貝到另外一個地方:
如何處理呢?
1、最最不靠譜的方式就是一個個分開拷貝到android的drawable,drawable-xhbpi,drawable-xxhbpi中。效率實在底下。
2、寫代碼來重命名和移動才是比較靠譜的。因為我不會js,python這樣子的腳本語言。我使用java來寫,也是效果一樣。
項目結構:
?
代碼:
import java.io.* import java.util.* import java.io.Filefun main() {// 1.讀取配置文件val pro = Properties()try {val directory = File("")//參數為空val courseFile = directory.canonicalPathval propertiesPath = "$courseFile\\src\\move.properties"println("配置文件路徑:$propertiesPath")val fis = FileInputStream(propertiesPath)val isr = InputStreamReader(fis, "GBK")pro.load(isr)fis.close()isr.close()} catch (e: FileNotFoundException) {System.err.println("當前配置文件不存在")return} catch (e: IOException) {System.err.println("讀取配置文件失敗")return}// 2.讀取配置文件內容// 需要去掉文件名中的字符val imgNameString = pro["imgName"] as String// 資源文件的目錄val srcDirName = pro["srcDir"] as String// 輸入文件的目錄val targetDir = pro["targetDir"] as Stringprintln("imgName:$imgNameString")println("srcDirName:$srcDirName")println("targetDir:$targetDir")val imageNameList = imgNameString.split(",")val srcDirFile = File(srcDirName)println("資源文件目錄是否存在:${srcDirFile.absolutePath} 是否存在:${srcDirFile.exists()}")println("資源文件目錄是否存在:${srcDirFile.absolutePath} 是否是目錄:${srcDirFile.isDirectory}")if (srcDirFile.isFile) {System.err.println("資源文件應該配置為目錄:$srcDirName")return}// 3.判斷目標目錄是否存在,不存在,則創建 val targetDirFile = File(targetDir)if (!targetDirFile.exists()) {val isSuccess = targetDirFile.mkdirs()println("當前目標目錄不存在,是否創建成功:$isSuccess")if (!isSuccess) {System.err.println("當前目標目錄創建失敗:${targetDirFile.absolutePath}")return}}val srcFileList = srcDirFile.listFiles()if (srcFileList == null) {System.err.println("該目錄下未找到文件:$srcDirName")return}// 4.將資源拷貝到目標目錄val imgDirList = mutableListOf<String>("drawable", "drawable-mdpi", "drawable-hdpi", "drawable-xhdpi", "drawable-xxhdpi", "drawable-xxxhdpi")for (imgName in imageNameList) {if (imgName.isEmpty()) continuefor (f in imgDirList) {val imgSrcName = srcDirName + "\\" + f + "\\" + imgNameval imgSrcFile = File(imgSrcName)if (imgSrcFile.exists()) {val imgTargetName = targetDir + "\\" + f + "\\" + imgNameval imgTargetFile = File(imgTargetName)println("$imgSrcName copyTo $imgTargetName")imgSrcFile.copyTo(imgTargetFile, overwrite = true)}}}println("!!!!!!!!!!!!!!!!!處理成功!!!!!!!!!!!!!!!!!") }配置文件 move.properties?:
imgName=ic_action_copy.png,ic_action_delete.pngsrcDir=D:\\Work\\WorkSpace\\AndroidDemo\\ChatKit-master\\sample\\src\\main\\res
targetDir=D:\\temp
轉載于:https://www.cnblogs.com/hbolin/p/11341379.html
總結
以上是生活随笔為你收集整理的Adnroid提高效率之资源移动的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android Studio在Git上将
- 下一篇: 五个 SQL 查询性能测试题,只有 40