在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的更多相关文章

  1. DOS批处理命令判断操作系统版本、执行各版本对应语句

    DOS批处理命令判断操作系统版本.执行各版本对应语句   昨天在家里试用  netsh interface ip set address 这些命令更改上网IP.DNS.网关等,今天将那些代码拿来办公室 ...

  2. DOS批处理命令递归删除给定的文件(夹),兼VC工程清理小工具

    使用dos批处理命令递归删除指定的文件(夹): (下面内容针对清理VC工程!自己按说明任意修改) 2014-06-10修改:删除前增加了[y,n]询问: echo off rem 递归删除当前文件下指 ...

  3. DOS批处理命令-引数取得

    参数传递对程序来说,是一个很重要的事情,所以,获得传递的参数是很重要的,接下来,我们来探讨下获得传递的参数的N种方式. 1.%N  获得传递的第N个参数(N最大为9) 就是传递过去的参数原样值(并且忽 ...

  4. DOS 批处理命令For循环命令详解

    for命令是一种对一系列对象依次循环执行同一个或多个命令的在命令行或批处理中运行的命令,结合一些Windows管理中的程序后,其处理功能强大.应用灵活方便程度令人刮目相看   for命令是一种对一系列 ...

  5. DOS批处理命令

    1.echo的用法(echo /? --查看帮助) echo off/on  打开关闭回显功能(@echo off 关闭回显并且不需要回显 echo 命令) echo,   显示空行(也可以是; . ...

  6. DOS批处理命令-for语句

    for是为了循环执行一系列命令而执行的命令语句. for要处理的内容不同,语法结构稍有不同.下面就各种情形来分别 1.基本的语法:FOR %変数 IN (set) DO 命令 [参数] 语法内容解析: ...

  7. DOS批处理命令-if语句

    IF语句是批处理中执行的条件分歧处理. 批处理中,IF分歧的写法有好几种,接下来,我们来一个一个的分析IF语法的结构. 1.IF [NOT] ERRORLEVEL 番号 批处理命令 当ERRORLEV ...

  8. DOS批处理命令-几个固定名称的变量

    批处理中有一些变量的变量名称是固定的,具有特定的意义,接下来,我们来看看这些有特定意义的变量到底有什么意义. 1.%CD%   当前路径的路径名[盘符 + 路径]    - 現在のディレクトリ文字列に ...

  9. DOS批处理命令-CMD命令

    CMD命令是重新开始一个命令解析器的实例.当然,他的功能并不止这么简单. Windows コマンド インタープリターの新しいインスタンスを開始します. 语法结构 CMD [/A | /U] [/Q] ...

随机推荐

  1. Android学习之RadioGroup和RadioButton

    转载自:http://my.oschina.net/amigos/blog/59261 实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使用.RadioG ...

  2. Material Design系列第一篇——Creating Apps with Material Design

    Creating Apps with Material Design //创建Material Design的App Material design is a comprehensive guide ...

  3. C++空类

    class Empty { public: Empty(); // 缺省构造函数 Empty( const Empty& ); // 拷贝构造函数 ~Empty(); // 析构函数 Empt ...

  4. 【大数据系列】hadoop命令指导官方文档翻译

    Hadoop Commands Guide Overview Shell Options Generic Options User Commands archive checknative class ...

  5. [转]OpenStack Neutron运行机制解析概要

    转载自:http://panpei.net.cn/2013/12/04/openstack-neutron-mechanism-introduce/ 自从开学以来,玩OpenStack也已经3个月了, ...

  6. linux中删除文件名称乱码

    在最近的操作中发现一些上传的文件有乱码,更改几次都无法正常转换到中文.下面给出正确的解决方案: 使用 ls -i 或者 ls -inum 查找出文件id号(红色字体) [root@localhost ...

  7. innodb 锁机制

    InnoDB锁问题 InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION):二是采用了行级锁.行级锁与表级锁本来就有许多不同之处,另外,事务的引入也带来了一些新问题.下面我 ...

  8. remote: fatal: could not read Username for 'http://spapa.wicp.net:3000': No such device ors

    解决办法: git remote add origin https://{username}:{password}@github.com/{username}/project.git in my ca ...

  9. 替换Quartus 自带编辑器 (转COM张)

    正文 此处以Quartus II 11.1和Notepad++ v5.9.6.2为例. 1. 使用QII自动调用Notepad++来打开HDL.sdc.txt等文件:并且可以在报错的时候,Notepa ...

  10. selenium中javascript调试

    之前写了使用js输入长文件的文章,有同事在使用时,发现竟然无法输入,也不知道是什么原因,且用的还是id方式. 在参考网文后,才发现是js写的有问题,现总结一下 javascript调试,在firefo ...