import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;/*** Created by zzw on 2016/9/29.* 描述:*/public class MakeXml {private final static String rootPath = "C:\\Users\\Administrator\\Desktop\\layoutroot\\values-{0}x{1}\\";private final static float dw = 480f;private final static float dh = 800f;private final static String WTemplate = "<dimen name=\"x{0}\">{1}px</dimen>\n";private final static String HTemplate = "<dimen name=\"y{0}\">{1}px</dimen>\n";private final static int[] otherPxX = new int[]{};private final static int[] otherPxY = new int[]{};public static void main(String[] args) {
//        makeString(320, 480);makeString(480, 800);makeString(480, 640);
//        makeString(480, 854);
//        makeString(540, 960);
//        makeString(600, 1024);
//        makeString(720, 1184);
//        makeString(720, 1196);
//        makeString(720, 1280);
//        makeString(768, 1024);
//        makeString(800, 1280);
//        makeString(1080, 1812);makeString(1080, 1920);
//        makeString(1440, 2560);
    }public static void makeString(int w, int h) {StringBuffer sb = new StringBuffer();sb.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");sb.append("<resources>");float cellw = w / dw;int tempxCount = (int) (dw * 2 / 3);for (int i = 1; i < tempxCount + 1; i++) {sb.append(WTemplate.replace("{0}", i + "").replace("{1}",change(cellw * i) + ""));}for (int i = 0; i < otherPxX.length; i++) {int temp = otherPxX[i];if (temp < dw && temp > tempxCount) {sb.append(WTemplate.replace("{0}", temp + "").replace("{1}",change(cellw * temp) + ""));}}//        sb.append(WTemplate.replace("{0}", "320").replace("{1}", w + ""));sb.append("</resources>");StringBuffer sb2 = new StringBuffer();sb2.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");sb2.append("<resources>");float cellh = h / dh;int tempyCount = (int) (dh / 3);for (int i = 1; i < tempyCount + 1; i++) {sb2.append(HTemplate.replace("{0}", i + "").replace("{1}",change(cellh * i) + ""));}for (int i = 0; i < otherPxY.length; i++) {int temp = otherPxY[i];if (temp <= dh && temp > tempyCount) {sb.append(WTemplate.replace("{0}", temp + "").replace("{1}",change(cellw * temp) + ""));}}//        sb2.append(HTemplate.replace("{0}", "480").replace("{1}", h + ""));sb2.append("</resources>");String path = rootPath.replace("{0}", w + "").replace("{1}", h + "");File rootFile = new File(path);if (!rootFile.exists()) {rootFile.mkdirs();}File layxFile = new File(path + "lay_x.xml");File layyFile = new File(path + "lay_y.xml");PrintWriter pw = null;try {pw = new PrintWriter(new FileOutputStream(layxFile));pw.print(sb.toString());pw.close();pw = new PrintWriter(new FileOutputStream(layyFile));pw.print(sb2.toString());} catch (FileNotFoundException e) {e.printStackTrace();} finally {if (pw != null)pw.close();}}public static float change(float a) {int temp = (int) (a * 100);return temp / 100f;}
}

转载于:https://www.cnblogs.com/zzw1994/p/5919232.html

生成不同尺寸dimen的xml文件以及文件夹相关推荐

  1. ubuntu php xml模块,生成ubuntu自动切换壁纸xml文件的php代码

    运行代码后在图片目录下会生成yuxing.xml,方便ubuntu自动切换壁纸. /* * 生成ubuntu自动切换壁纸xml文件 */ //图片目录 $dir = '/home/yuxing/bac ...

  2. 怎么用python创建文件-如何用Python创建生成xml文档文件的方法

    用如何用Python完成创建生成xml文档文件的工作. 需要用到的方法:from xml.dom.minidom import Document,想必大家很熟悉这个操作了,接下来就用python 创建 ...

  3. 利用opencv中的类FileStorage生成和读取XML和YAML文件

    有时候程序中的变量值.字符串.数组等数据也需要独立于源代码本身保存,这个时候就需要用到XML和YAML文件进行保存. OpenCV4提供了用于生成和读取XML文件和YAML文件的类FileStorag ...

  4. libxml2生成,解析,修改xml文件,以及使用实例

    利用libxml2生成,解析,修改xml文件. 1. 生成xml文件 // createXmlFile.cpp#include <stdio.h> #include <libxml/ ...

  5. java gradle maven_java – 如何使gradle在maven用户的项目根目录下生成一个有效的pom.xml文件?...

    在现在只有两天的时间里,我绝对出售了我所有Java项目的毕业生,并从我所有项目的根目录中删除pom.xml. 然而,我想保持与maven兼容,在某种意义上,我希望一个毕业生的任务能够在用户想要的项目根 ...

  6. 【OpenCV 4开发详解】保存和读取XML和YMAL文件

    本文首发于"小白学视觉"微信公众号,欢迎关注公众号 本文作者为小白,版权归人民邮电出版社发行所有,禁止转载,侵权必究! 经过几个月的努力,小白终于完成了市面上第一本OpenCV 4 ...

  7. OpenCV之core 模块. 核心功能(2)基本绘图 随机数发生器绘制文字 离散傅立叶变换 输入输出XML和YAML文件 与 OpenCV 1 同时使用

    基本绘图 目的 本节你将学到: 如何用 Point 在图像中定义 2D 点 如何以及为何使用 Scalar 用OpenCV的函数 line 绘 直线 用OpenCV的函数 ellipse 绘 椭圆 用 ...

  8. android xml引用系统资源文件,android开发教程之系统资源的使用方法 android资源文件...

    一.颜色资源 1.颜色XML文件格式 //resources根元素 #000000 //color子元素 2.引用格式: java代码中:R.color.color_name  (这是一个int型的数 ...

  9. 《OpenCV3编程入门》学习笔记5 Core组件进阶(六)输入输出XML和YAML文件

    第5章 Core组件进阶 5.6 输入输出XML和YAML文件 5.6.1 XML和YAML文件 XML和YAML是使用非常广泛的文件格式,可以利用XML或者YAML式的文件存储和还原各种数据结构,还 ...

最新文章

  1. 利用python安装opencv_Linux下安装OpenCV+Python支持
  2. 元宇宙,分三层!香港中文大学再现「校园元宇宙」原型
  3. 【Linux 内核】Linux 内核源码目录说明 ① ( arch 目录 | block 目录 | certs 目录 | crypto 目录 | Documentation 目录 )
  4. hdu 4864(2) 线段树
  5. FPGA(2)--例化语句--1位全加器
  6. Funter for Mac:支持快速显示和隐藏文件和文件夹
  7. [Git]4.2 标签
  8. IDEA(2018版)实用快捷键整理
  9. php mysql mysql_set_charset()._PHP:MySQL函数mysql_set_charset()的用法
  10. 电子通信计算机行业分类,电子信息产业行业分类目录
  11. 数独问题流程图_数独求解算法
  12. (BFS/状态压缩)HDU 5025 Saving Tang Monk
  13. python地图 两点距离_使用python计算google地图中两点之间的距离
  14. grep -v xxx 用法
  15. oracle假如存在才删除该字段,Oracle删除表、字段之前判断表、字段是否存在
  16. 【Linux】压缩与解压zip
  17. Effie:真正的极简主义!秒杀幕布
  18. Android 仿淘宝京东商品详情视频+图片与图片第一帧获取
  19. Ubuntu离线安装Gitlab
  20. Python 字典的get()用法

热门文章

  1. Sql语句实现某列每条记录与同列最大值的差值计算
  2. 以二进制输出64位类型的数据_Java入门第五课:Java基本数据类型与变量的声明...
  3. python win32转pdf 横版_Python调用Win32com实现Office批量转PDF
  4. adb命令重置_android – 擦除数据/通过ADB恢复出厂设置
  5. 如何用html构建ios应用,使用HTML5构建iOS原生APP(5)
  6. linux tar命令压缩_Linux tar命令来压缩和提取文件
  7. 哪些趋势正在推动人工智能创新?
  8. Java基础篇:什么是线程优先级?
  9. V8 7.4释出!支持JIT-less不需可执行内存也能执行
  10. Redis入门到高可用(十一)—— 慢查询