• 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(" ",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(" ",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(" ",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);//关闭文件流.
      ?>
  • 相关阅读:
    基于Haproxy+Keepalived构建高可用负载均衡集群
    基于 Haproxy 构建负载均衡集群
    shell for循环练习题99乘法表
    帮软件同事写的vsftpd服务虚拟用户管理脚本
    sed文件处理练习题
    判断ssh登录密码验证错误超过5次的IP被拉黑
    使用shell中数组功能生成自己的手机号
    利用Crontab设置每个月第一个周六的17:30执行/opt/shell.sh 脚本
    Tomcat 项目代码上线步骤详解
    Jar/War/Ear等包的作用与区别详解
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/9937112.html
Copyright © 2020-2023  润新知