cocos2d-x教程3:用php或DOS批處理命令來轉換文件和解壓縮zip

在cocos2d-x使用中,需要不停的轉換文件和壓縮或解壓文件,如果全人工來做,太麻煩了,且容易出錯。我現在把一些用的到批處理貼出來,供大家使用

  • 自動把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);//關閉文件流.
    ?>
發佈了28 篇原創文章 · 獲贊 5 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章