Adnroid提高效率之资源文件改名
在做开发过程中,经常会遇到UI设计提供得资源文件如下所示:
经常把相同的文件有个@2x,@3x放到同一个目录中。
但是这并不是我们想要的,通常在android开发过程中,都是需要分别放到drawable,drawable-xhbpi,drawable-xxhbpi等等相对应的目录中。
如何处理呢?
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\\modify.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 deleteString = pro["delete"] as String// 资源文件的目录val srcDirName = pro["srcDir"] as String// 输入文件的目录val targetDir = pro["targetDir"] as Stringprintln("delete:$deleteString")println("srcDirName:$srcDirName")println("targetDir:$targetDir")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.循环遍历资源目录下的文件,重命名并移动到目标目录下for (f in srcFileList) {if (f.name.contains(deleteString)) {val newFileName = f.name.replace(deleteString, "")val newFile = File(targetDirFile.absolutePath + "\\" + newFileName)if (newFile.exists()) {val isDeleteSuccess = newFile.delete()if (!isDeleteSuccess) {System.err.println("删除已存在的文件失败")return}}println("新文件名:$newFileName" + " -- 新路径:${newFile.absolutePath}")f.copyTo(newFile)}}println("!!!!!!!!!!!!!!!!!处理成功!!!!!!!!!!!!!!!!!") }
配置文件 modify.properties :
delete=@2xsrcDir=D:\\项目\\6.设计图\\icontargetDir=D:\\项目\\6.设计图\\icon2
转载于:https://www.cnblogs.com/hbolin/p/11320979.html
Adnroid提高效率之资源文件改名相关推荐
- Adnroid提高效率之资源移动
在做开发过程中,有时候,需要将某几个,或者某个资源从一个地方拷贝到另外一个地方: 如何处理呢? 1.最最不靠谱的方式就是一个个分开拷贝到android的drawable,drawable-xhbpi, ...
- python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
这篇文章主要为大家详细介绍了Python 大量小文件存储提高效率的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧 ...
- Hive优化【提高效率,减少资源浪费等】
一.谨慎使用API 大数据场景下,必然是有大量的数据,因此大数据场景下并不怕数据量大,不行可多开几个节点,用以存储.但是大数据场景下,害怕的是数据倾斜,如果使用不当API,很容易造成数据倾斜问题. 容 ...
- 从 Gzip 压缩 SVG 说起 — 论如何减小资源文件的大小
原文地址:Of SVG, Minification and Gzip 原文作者:Anton Khlynovskiy 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m- ...
- 推荐7款Mac上能极大提高效率的软件,建议收藏!
给大家分享7款Mac端鲜为人知但是能极大提高效率的软件,个个都非常强大,直接上干货!喜欢的话记得点赞支持哦~ 1.simplemind simplemind是一款跨平台思维导图工具,可以帮助思考.收集 ...
- 多线程在任何情况下均能提高效率吗?
早段时间在网上看到一篇文章,其中就写了使用多线程模型实现文件的快速搜索.由此使我一直在考虑,多线程模型真的能够提高应用程序的效率吗?如果不能,那么多线程模型能干什么呢? 很多程序员一谈到提高应用程序效 ...
- 做一个项目,平时都用到哪些工具提高效率(上)
做一个项目,平时都用到哪些工具提高效率(上) 转载 做.NET 相关项目,Visual Studio 2008,SQL Server 2000/2005是标准的配置,但是,除此之外,还可以应用哪些工 ...
- 提高效率的几个软件和快捷键
自己常用的提高效率的几个软件和快捷键,这里做下总结,希望对一些朋友有用,也希望大家和我分享一些自己的方便快捷的软件和快捷方式: 1.软件 1.1 TextEditor 很方便特别是对网上文章的整理 1 ...
- 文件批量重命名的方法,图解很多文件改名
如何批量重命名文件?是很多人经常为遇到的问题,如果靠人工一个一个去修改文件名,不仅改名慢,而且改起名来枯燥的很,使用批量重命名软件,可以提高90%的文件改名效率.下面,为大家介绍一款批量重命名文件的软 ...
最新文章
- kafka-2.11-2.3.0版本配置文件参数详解_Kafka版本特性总结
- Storyboard里面的几种Segue区别及视图的切换:push,modal,popover,replace和custom
- python dataframe列数值相加,python合并dataframe中的行并将值相加
- java 线程状态_JAVA线程漫谈:线程状态与状态转换解析
- MQTT客户端连接服务器协议,mqtt客户端和服务器长连接
- ClassPathScanningCandidateComponentProvider 扫描给定包及其子包的类
- Visual Studio 2010 实用功能总结图解
- BZOJ 2843 极地旅行社
- 怎么让同网络计算机强制关机,知道局域网ip怎么关机
- 2017年网络犯罪现状分析报告
- 03-redis数据持久化
- 我的第一份博客,测试一下:P
- ORA-28002 the password will expire
- spring与jdk版本要求
- 仿今日头条项目——个人中心
- 搜苹果ipad版_春季课前第3轮评估! 安卓苹果电脑端全平台支持!
- java-opencv 米粒数_Python opencv学习音符的米粒数,返回每个米粒的位置面积和总米粒数的平均面积,pythonopencv,笔记,之数,并,一个,及,个数...
- html页面截取,HTML 网页截图
- 绕过微软WGA正版验证(蓝色五角星)的几则技巧
- 前端程序员应该理解的reduce方法,对你的js能力很有帮助