在做开发过程中,有时候,需要将某几个,或者某个资源从一个地方拷贝到另外一个地方:

如何处理呢?

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\\restargetDir=D:\\temp

转载于:https://www.cnblogs.com/hbolin/p/11341379.html

Adnroid提高效率之资源移动相关推荐

  1. Adnroid提高效率之资源文件改名

    在做开发过程中,经常会遇到UI设计提供得资源文件如下所示: 经常把相同的文件有个@2x,@3x放到同一个目录中. 但是这并不是我们想要的,通常在android开发过程中,都是需要分别放到drawabl ...

  2. Hive优化【提高效率,减少资源浪费等】

    一.谨慎使用API 大数据场景下,必然是有大量的数据,因此大数据场景下并不怕数据量大,不行可多开几个节点,用以存储.但是大数据场景下,害怕的是数据倾斜,如果使用不当API,很容易造成数据倾斜问题. 容 ...

  3. 推荐7款Mac上能极大提高效率的软件,建议收藏!

    给大家分享7款Mac端鲜为人知但是能极大提高效率的软件,个个都非常强大,直接上干货!喜欢的话记得点赞支持哦~ 1.simplemind simplemind是一款跨平台思维导图工具,可以帮助思考.收集 ...

  4. 多线程在任何情况下均能提高效率吗?

    早段时间在网上看到一篇文章,其中就写了使用多线程模型实现文件的快速搜索.由此使我一直在考虑,多线程模型真的能够提高应用程序的效率吗?如果不能,那么多线程模型能干什么呢? 很多程序员一谈到提高应用程序效 ...

  5. 做一个项目,平时都用到哪些工具提高效率(上)

    做一个项目,平时都用到哪些工具提高效率(上)  转载 做.NET 相关项目,Visual Studio 2008,SQL Server 2000/2005是标准的配置,但是,除此之外,还可以应用哪些工 ...

  6. python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例

    这篇文章主要为大家详细介绍了Python 大量小文件存储提高效率的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧 ...

  7. 提高效率的几个软件和快捷键

    自己常用的提高效率的几个软件和快捷键,这里做下总结,希望对一些朋友有用,也希望大家和我分享一些自己的方便快捷的软件和快捷方式: 1.软件 1.1 TextEditor 很方便特别是对网上文章的整理 1 ...

  8. Android 功耗(18)---android省电和提高效率

    android省电和提高效率 一.Android省电开发之性能优化 我之前博客有在总结,just a little,http://blog.csdn.net/wtyvhreal/article/det ...

  9. 如何最大程度的提高效率?ie分析软件为效率提高带来无限可能

    效率是提高生产力最主要的因素,人们在很久以前就认识到了效率的重要性,当时机器的出现和发展导致了大家对效率的话题和讨论,效率这一词的解释也很简单,就是在最简短的时间利用一些尽可能使用资源来实现当前的目标 ...

最新文章

  1. 一种可以避免数据迁移的分库分表scale-out扩容方式
  2. 作者赠送的《我的第一本c++书》收到啦
  3. C语言学习之购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。
  4. 如何结合SharePoint Designer 2010 与Visio 2010 创建工作流?
  5. win10 linux uefi启动不了系统安装教程,win10更新失败,提示硬盘布局不受UEFI固件支持如图,怎么解决?...
  6. 20Spring切面的优先级
  7. 视频APP软件开发功能架构
  8. 如何修改html数据,怎么修改网页数据
  9. discuzx2.5php7.0,discuz!X2.5新浪微博登陆
  10. Python 随机切换桌面背景图
  11. Stochastic Weight Averaging
  12. 什么牌子的蓝牙耳机音质好?2022好音质蓝牙耳机推荐
  13. css —— 文字添加白色描边
  14. 思岚科技Athena打破机器人底盘价格极限
  15. 服务器与pc机的区别
  16. 鸿蒙系统 新闻,首款鸿蒙系统终端新闻 华为正式发布鸿蒙系统
  17. 网易云音乐(netease-cloud-music)无法通过图标打开,只能用命令行开启
  18. VMware的“Intel VT-x is disabled”解决方法
  19. DCMM的架构及能力域详细分析
  20. 使用opencv检测字符断裂

热门文章

  1. 问答项目---登陆也要做验证!(JS和PHP验证)
  2. 电脑经验--三星S4显示互联网连接缓慢,网络已被禁用
  3. Revit API取得变量的内参名称
  4. WebLogic下载地址
  5. 关于文件透明加密解密
  6. mtc: manufacturing technology center
  7. 帝国理工大学2021-22电气与电子工程系应用机器学习硕士课程大纲
  8. 简单的树形dp NOJ376 小强的Linux
  9. Flutter入坑分享
  10. element-vue的简单使用