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\\restargetDir=D:\\temp
转载于:https://www.cnblogs.com/hbolin/p/11341379.html
Adnroid提高效率之资源移动相关推荐
- Adnroid提高效率之资源文件改名
在做开发过程中,经常会遇到UI设计提供得资源文件如下所示: 经常把相同的文件有个@2x,@3x放到同一个目录中. 但是这并不是我们想要的,通常在android开发过程中,都是需要分别放到drawabl ...
- Hive优化【提高效率,减少资源浪费等】
一.谨慎使用API 大数据场景下,必然是有大量的数据,因此大数据场景下并不怕数据量大,不行可多开几个节点,用以存储.但是大数据场景下,害怕的是数据倾斜,如果使用不当API,很容易造成数据倾斜问题. 容 ...
- 推荐7款Mac上能极大提高效率的软件,建议收藏!
给大家分享7款Mac端鲜为人知但是能极大提高效率的软件,个个都非常强大,直接上干货!喜欢的话记得点赞支持哦~ 1.simplemind simplemind是一款跨平台思维导图工具,可以帮助思考.收集 ...
- 多线程在任何情况下均能提高效率吗?
早段时间在网上看到一篇文章,其中就写了使用多线程模型实现文件的快速搜索.由此使我一直在考虑,多线程模型真的能够提高应用程序的效率吗?如果不能,那么多线程模型能干什么呢? 很多程序员一谈到提高应用程序效 ...
- 做一个项目,平时都用到哪些工具提高效率(上)
做一个项目,平时都用到哪些工具提高效率(上) 转载 做.NET 相关项目,Visual Studio 2008,SQL Server 2000/2005是标准的配置,但是,除此之外,还可以应用哪些工 ...
- python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
这篇文章主要为大家详细介绍了Python 大量小文件存储提高效率的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧 ...
- 提高效率的几个软件和快捷键
自己常用的提高效率的几个软件和快捷键,这里做下总结,希望对一些朋友有用,也希望大家和我分享一些自己的方便快捷的软件和快捷方式: 1.软件 1.1 TextEditor 很方便特别是对网上文章的整理 1 ...
- Android 功耗(18)---android省电和提高效率
android省电和提高效率 一.Android省电开发之性能优化 我之前博客有在总结,just a little,http://blog.csdn.net/wtyvhreal/article/det ...
- 如何最大程度的提高效率?ie分析软件为效率提高带来无限可能
效率是提高生产力最主要的因素,人们在很久以前就认识到了效率的重要性,当时机器的出现和发展导致了大家对效率的话题和讨论,效率这一词的解释也很简单,就是在最简短的时间利用一些尽可能使用资源来实现当前的目标 ...
最新文章
- 一种可以避免数据迁移的分库分表scale-out扩容方式
- 作者赠送的《我的第一本c++书》收到啦
- C语言学习之购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。
- 如何结合SharePoint Designer 2010 与Visio 2010 创建工作流?
- win10 linux uefi启动不了系统安装教程,win10更新失败,提示硬盘布局不受UEFI固件支持如图,怎么解决?...
- 20Spring切面的优先级
- 视频APP软件开发功能架构
- 如何修改html数据,怎么修改网页数据
- discuzx2.5php7.0,discuz!X2.5新浪微博登陆
- Python 随机切换桌面背景图
- Stochastic Weight Averaging
- 什么牌子的蓝牙耳机音质好?2022好音质蓝牙耳机推荐
- css —— 文字添加白色描边
- 思岚科技Athena打破机器人底盘价格极限
- 服务器与pc机的区别
- 鸿蒙系统 新闻,首款鸿蒙系统终端新闻 华为正式发布鸿蒙系统
- 网易云音乐(netease-cloud-music)无法通过图标打开,只能用命令行开启
- VMware的“Intel VT-x is disabled”解决方法
- DCMM的架构及能力域详细分析
- 使用opencv检测字符断裂