cocos2d-x教程3:用php或DOS批处理命令来转换文件和解压缩zip
在cocos2d-x使用中,须要不停的转换文件和压缩或解压文件。假设全人工来做,太麻烦了,且easy出错。
我如今把一些用的到批处理贴出来,供大家使用
- 自己主动把dat文件按数字排序重命名gz。DOS批处理
- @echo off&setlocal EnableDelayedExpansion
color 0a
echo %date% %time%
echo 正在批量重命名文件......
set a=1
for /f "delims=" %%i in ('dir /b *.dat') do (
if not "%%~ni" == "%~n0" (
if !a! LSS 10 (ren "%%i" "0!a!.gz")else (ren "%%i" "!a!.gz")
set /a a+=1
)
)
set /a a-=1
echo 重命名完毕。共重命名%a%个文件。
pause - php解压zip.配置php.ini 要使用该PHP扩展类,须要(PHP 5 >= 5.2.0, PECL zip >= 1.1.0),部分方法须要 PHP 5.2.+。且php.ini配置支持zip
对于win系统,直接去掉php_zip.dll 扩展的凝视,然后重新启动http服务(IIS或Apache)就可以 - $zip = new ZipArchive;
$res = $zip->open('AM.ZIP');
if ($res === TRUE) {
echo 'ok';
//解压缩到test目录
$zip->extractTo('AM');
$zip->close();
} else {
echo 'failed, code:' . $res;
} - php循环重命名
- $s=explode("\n",trim(`dir/b d:\\tmp\\`));//获取该路径下全部文件名称
//print_r($s);
foreach($s as $rs)
{
$name=explode(".",$rs);
$file_name=$name[0];//获取要创建的目录名字
//mkdir("E:/11-2/caps/$file_name");//创建目录
rename('d:/tmp/'.$rs,"d:/tmp/$file_name".".gz");//移动并重命名文件}
- php循环自解压
- $s=explode("\n",trim(`dir/b d:\\tmp\\`));//获取该路径下全部文件名称
//print_r($s);
foreach($s as $rs)
{
$name=explode(".",$rs);
$file_name=$name[0];//获取要创建的目录名字
//mkdir("E:/11-2/caps/$file_name");//创建目录
rename('d:/tmp/'.$rs,"d:/tmp/$file_name".".gz");//移动并重命名文件
//
$zip = new ZipArchive;
$tmpFile=$file_name.".gz";
$res = $zip->open($tmpFile);
if ($res === TRUE) {
echo 'ok';
//解压缩到test目录
$zip->extractTo($file_name);
$zip->close();
} else {
echo $tmpFile.'failed, code:' . $res."<br>";
}}
- php循环读取目录,然后自己主动解压
- $s=explode("\n",trim(`dir/b d:\\tmp\\`));//获取该路径下全部文件名称
//print_r($s);
foreach($s as $rs)
{
$name=explode(".",$rs);
$file_name=$name[0];//获取要创建的目录名字
//mkdir("E:/11-2/caps/$file_name");//创建目录
rename('d:/tmp/'.$rs,"d:/tmp/$file_name".".gz");//移动并重命名文件
//
$zip = new ZipArchive;
$tmpFile=$file_name.".gz";
$res = $zip->open($tmpFile);
if ($res === TRUE) {
echo 'ok';
//解压缩到test目录
$zip->extractTo($file_name);
$zip->close();
} else {
echo $tmpFile.'failed, code:' . $res."<br>";
}}
- 把一个文件复制到同名目录下的另外一个文件。比如effect01.png 复制到effect01目录下的sheet.png
- <?php
$fnum = 0;
$path="d://wamp/www/my/";##路径
$handle = @ opendir($path) or die("无法打开目录");
$arr=array();##定义保存存在的文件
$imgs=array("1.jpg","11.jpg");//測试假使匹配这2个文件
if($handle){
while (false !== ($file = readdir($handle))){//存在文件
if($file != '.' && $file != '..'){##不为..
//$img=substr($file,strripos($file,".")+1);//推断后缀名
//if($img=="pvr"){
$v=$file.".png";
$newname="$file/sheet.png";
if(rename($v,$newname))
{
echo '成功将'.$v.'重命名'.$newname.'<br />';
}
//删除旧文件
$oldFile="$file/sheet.pvr";
if(unlink($oldFile)){
echo "成功将".$oldFile."删除!<br />";
}
//}
$fnum++;
}
}
}
closedir($handle);//关闭文件流.
?>
cocos2d-x教程3:用php或DOS批处理命令来转换文件和解压缩zip的更多相关文章
- DOS批处理命令判断操作系统版本、执行各版本对应语句
DOS批处理命令判断操作系统版本.执行各版本对应语句 昨天在家里试用 netsh interface ip set address 这些命令更改上网IP.DNS.网关等,今天将那些代码拿来办公室 ...
- DOS批处理命令递归删除给定的文件(夹),兼VC工程清理小工具
使用dos批处理命令递归删除指定的文件(夹): (下面内容针对清理VC工程!自己按说明任意修改) 2014-06-10修改:删除前增加了[y,n]询问: echo off rem 递归删除当前文件下指 ...
- DOS批处理命令-引数取得
参数传递对程序来说,是一个很重要的事情,所以,获得传递的参数是很重要的,接下来,我们来探讨下获得传递的参数的N种方式. 1.%N 获得传递的第N个参数(N最大为9) 就是传递过去的参数原样值(并且忽 ...
- DOS 批处理命令For循环命令详解
for命令是一种对一系列对象依次循环执行同一个或多个命令的在命令行或批处理中运行的命令,结合一些Windows管理中的程序后,其处理功能强大.应用灵活方便程度令人刮目相看 for命令是一种对一系列 ...
- DOS批处理命令
1.echo的用法(echo /? --查看帮助) echo off/on 打开关闭回显功能(@echo off 关闭回显并且不需要回显 echo 命令) echo, 显示空行(也可以是; . ...
- DOS批处理命令-for语句
for是为了循环执行一系列命令而执行的命令语句. for要处理的内容不同,语法结构稍有不同.下面就各种情形来分别 1.基本的语法:FOR %変数 IN (set) DO 命令 [参数] 语法内容解析: ...
- DOS批处理命令-if语句
IF语句是批处理中执行的条件分歧处理. 批处理中,IF分歧的写法有好几种,接下来,我们来一个一个的分析IF语法的结构. 1.IF [NOT] ERRORLEVEL 番号 批处理命令 当ERRORLEV ...
- DOS批处理命令-几个固定名称的变量
批处理中有一些变量的变量名称是固定的,具有特定的意义,接下来,我们来看看这些有特定意义的变量到底有什么意义. 1.%CD% 当前路径的路径名[盘符 + 路径] - 現在のディレクトリ文字列に ...
- DOS批处理命令-CMD命令
CMD命令是重新开始一个命令解析器的实例.当然,他的功能并不止这么简单. Windows コマンド インタープリターの新しいインスタンスを開始します. 语法结构 CMD [/A | /U] [/Q] ...
随机推荐
- 关于MFLAGS与MAKEFLAGS
与子make通讯的选项 诸如‘-s’和‘-k’标志通过变量MAKEFLAGS自动传递给子make.该变量由make自动建立,并包含make收到的标志字母.所以,如果您是用‘make –ks’变量MAK ...
- JSP中的动态包含和静态包含的区别
本文转载自http://blog.csdn.net/xuxu198899223/article/details/8501044 1. 语法格式 (1)静态包含:<%@ include file= ...
- 怎样更改SQL Server 2008的身份验证方式
大家都知道sql server 有两种登录验证方式,即sql server验证方式和windows验证方式,但是sql server默认的是windows登录验证方式,我们如何启用sql server ...
- Esper学习之九:EPL语法(五)
本篇的内容主要包括了Subquery(也就是子查询)和Join,内容不少,但是不难,基本上和sql差不太多. 1.Subquery EPL里的Subquery和sql的类似,是否比sql的用法更多我不 ...
- C#设计模式--工厂方法模式
0.C#设计模式-简单工厂模式 设计模式: 工厂方法模式(Factory Method Pattern) 介绍:简单工厂模式是要在工厂类中通过数据来做个决策,在工厂类中的多个类中实例化出来其中一个要用 ...
- sencha touch TabPanel 加入导航按钮(向左向右按钮) 以及Carousel插件(2014-11-7)
Carousel插件代码: /* * TabPanel的Carousel功能插件 * 取至 * https://github.com/VinylFox/Ext.ux.touch.SwipeTabs * ...
- freemarker了解
今天主要了解了项目流程,了解了这周要做退款详情迁移,了解了freemarker
- Twig---基本使用
三种特殊语法: {{ … }} “说些什么”:输出一个变量值或者一个表达式的结果到模板.如:{{ item.username }}. twig也包含filters,它可以在模板渲染之前改变输出内容 ...
- JAVA中域、方法、类的可见性
多态在域的问题上是特殊的.我理解不了中文版的书直接叫域,看了英文原版,原版写的是fields,直接翻译虽然没错,但是出问题的变量不是域.特地查了what is the meaning of field ...
- Oracle之RMAN备份恢复1-基础篇
1,rman的作用与体系架构 1.1 什么是rman rman(recovery manager)是oracle8i以后dba的一重要工具一般位于$oracle_home/bin目录下,主要用来备份, ...