搜索
bottom↓
回复: 8

谁帮我写一个批处理文件

[复制链接]

出25入84汤圆

发表于 2018-6-6 14:30:10 | 显示全部楼层 |阅读模式
就是指定一个主文件夹1,将其下的子文件夹(1.1 1.2 1.3.。。)内的所有***.bmp图片(0.bmp 1.bmp 。。。12.bmp)复制到另一个文件夹2下,并修改名称为0.bmp。。。。。到n.bmp


其实就是把一些子文件夹下的图片整合到另一个文件夹下,并依次命名。
不管用vs 还是qt 只要在windows上能用就行。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2018-6-6 14:30:11 | 显示全部楼层
写了个python 代码,需要安装装python运行,我装的python2.7试了可用:

import os
import os.path
import shutil

rootdir = "D:\\temp"
dstdir = "D:\\temp1"
filetype = ".jpg"

n = 0
for parent,dirnames,filenames in os.walk(rootdir):    #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字
    for filename in filenames:
        path = os.path.join(parent,filename)
        if path[-4:] == filetype:  # 你想对文件的操作
            n = n + 1
            fname = '%d' % n + filetype
            print path + "==>" + fname
            dstfile = os.path.join(dstdir, fname)
            shutil.copyfile(path, dstfile)

出0入0汤圆

发表于 2018-6-6 21:15:13 来自手机 | 显示全部楼层
这种事,确实Python最合适

出0入0汤圆

发表于 2018-6-6 21:33:21 | 显示全部楼层
python分分钟的事  建议楼主抽空学下 入门很简单的

出25入84汤圆

 楼主| 发表于 2018-6-7 10:35:19 | 显示全部楼层
tomtone 发表于 2018-6-6 20:00
写了个python 代码,需要安装装python运行,我装的python2.7试了可用:

import os

ok,就你了。

出25入84汤圆

 楼主| 发表于 2018-6-7 10:38:48 | 显示全部楼层
自己也简单写了个qt的,贴出来
  1. #include <QApplication>
  2. #include <QDir>
  3. #include <QString>
  4. #include <QDebug>
  5. #include <QImage>

  6. int main(int argc, char *argv[])
  7. {
  8.     QApplication a(argc, argv);

  9.     QString SOURCEDIR = "D:/SOURCE/";
  10.     QString DESTDIR = "D:/DEST/";
  11.     QString  DestBMPName;
  12.     QImage SourceBMP;

  13.     QDir DirMother(SOURCEDIR);
  14.     int BMPCount = 0;//图片名称自增

  15.     QStringList strlist = DirMother.entryList(QDir::Dirs | QDir::NoDotAndDotDot);
  16.     qDebug()<<strlist.count();//有多少子文件夹

  17.     for(int i = 0; i < strlist.count(); i++){
  18.         QDir DirChild(SOURCEDIR + strlist.at(i));
  19.         QStringList strlist1 = DirChild.entryList(QDir::Files);
  20. //        qDebug()<<strlist1.count();//每个子文件夹有多少个文件

  21.         for(int j = 0; j < strlist1.count(); j++){
  22. //            qDebug()<<strlist1.count();
  23. //            qDebug()<<strlist1;
  24.             QFileInfo file_info = strlist1.at(j);
  25.             if(QString::compare(file_info.suffix(), QString("BMP"), Qt::CaseInsensitive) == 0){//是否是指定格式文件
  26.                 BMPCount++;
  27.                 SourceBMP.load(SOURCEDIR + strlist.at(i) + "/" + strlist1.at(j));
  28. //                qDebug()<<SOURCEDIR + "/" + strlist.at(i) + "/" + strlist1.at(j);
  29.                 DestBMPName = DESTDIR + QString("%03").arg(BMPCount) + ".BMP";
  30. //                qDebug()<<DestBMPName;
  31.                 SourceBMP.save(DestBMPName);
  32.             }
  33.         }
  34.     }
  35.     return a.exec();
  36. }
复制代码

出0入0汤圆

发表于 2018-6-8 11:13:27 | 显示全部楼层


下面是aardio工程的源代码:
import win.ui;
/*DSG{{*/
mainForm = win.form(text="aardio form";right=564;bottom=195)
mainForm.add(
button={cls="button";text="转换";left=330;top=142;right=423;bottom=185;z=5};
button2={cls="button";text="退出程序";left=434;top=143;right=527;bottom=186;z=6};
edit={cls="edit";left=11;top=65;right=269;bottom=126;acceptfiles=1;edge=1;multiline=1;z=1};
edit2={cls="edit";left=286;top=67;right=542;bottom=123;acceptfiles=1;edge=1;multiline=1;z=2};
groupbox={cls="groupbox";text="选择";left=31;top=143;right=272;bottom=181;edge=1;z=7};
radiobutton={cls="radiobutton";text="复制";left=85;top=154;right=138;bottom=172;checked=1;z=8};
radiobutton2={cls="radiobutton";text="剪切";left=149;top=154;right=202;bottom=172;z=9};
static={cls="static";text="移动前的路径";left=64;top=25;right=224;bottom=57;font=LOGFONT(h=-19);transparent=1;z=3};
static2={cls="static";text="移动后的路径";left=333;top=25;right=493;bottom=57;font=LOGFONT(h=-19);transparent=1;z=4}
)
/*}}*/

mainForm.edit2.wndproc = function(hwnd,message,wParam,lParam){
if(message = 0x233/*_WM_DROPFILES*/){
  var jj = win.getDropFile(wParam);
  mainForm.edit2.text = jj[#jj];
}
}

mainForm.edit.wndproc = function(hwnd,message,wParam,lParam){
if(message = 0x233/*_WM_DROPFILES*/){
  var jj = win.getDropFile(wParam);
  mainForm.edit.text = jj[#jj];
}
}

mainForm.button.oncommand = function(id,event){
                import fsys;
                var path1 = mainForm.edit.text
                var path2 = mainForm.edit2.text
                fsys.enum(path1,"*.*",//遍历文件,查找目录里的所有文件
                function(dir,filename){
                if(filename){  //注:dir+filename=绝对路径

                var kk = string.replace(dir++filename,"@"++path1,path2)       

           if(mainForm.radiobutton.checked = true){
                          fsys.copy(dir++filename,kk)
                  }
           if(mainForm.radiobutton2.checked = true){
                           fsys.move(dir++filename,kk)
           }
                           
                }
                } )         
}

mainForm.button2.oncommand = function(id,event){
        win.quitMessage()
}

mainForm.enableDpiScaling();
mainForm.show();

return win.loopMessage();

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出25入84汤圆

 楼主| 发表于 2018-6-8 12:05:37 | 显示全部楼层
njlzzdh 发表于 2018-6-8 11:13
下面是aardio工程的源代码:
import win.ui;
/*DSG{{*/

多谢了,只是没办法再给你莫元了。

出200入657汤圆

发表于 2018-6-8 12:09:23 | 显示全部楼层
python大法好,又学了一招
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 08:20

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表