⑴ 批量重命名文件名为父文件夹名字加序号(1)(2) 求高手帮忙修改下代码
文件批量重命名并加序号的方法
步骤1,下载安装优速文件批量重命名软件后打开,选择软件中的“添加文件”按钮,将需要重命名的文件批量添加到软件中,软件支持任何格式的文件。
⑵ python 修改文件名
importos
importsys
path="D:emojis"for(path,dirs,files)inos.walk(path):
forfilenameinfiles:
newname="emoji_"+filename
os.rename(path+"\"+filename , "D: ew_emojis"+"\"+newname)
python文件和目录操作方法
1、os.mknod("test.txt")
#创建空文件
2、fp = open("test.txt",w)
#直接打开一个文件,如果文件不存在则创建文件
3、关于open 模式:
w:以写方式打开,
a:以追加模式打开(从EOF开始,必要时创建新文件)
r+:以读写模式打开
w+:以读写模式打开(参见w)
a+:以读写模式打开(参见a)
rb:以二进制读模式打开
wb:以二进制写模式打开(参见w)
ab:以二进制追加模式打开(参见a)
rb+:以二进制读写模式打开(参见r+)
wb+:以二进制读写模式打开(参见w+)
ab+:以二进制读写模式打开(参见a+)
⑶ 用C语言编程修改文件名(C++也行)
麻烦在文件名允许有空白和一些与C语言有冲突的特殊符号。
如果没有上述情况可以这样写:
(1)通过位置参数传入 老扩展名 和 新扩展名
void main(int argc, char *argv[]){}
命令行: my_rename.exe jpeg jpg
程序名在 argv[0]里,"jpeg" 在 argv[1]里,jpg 在 argv[2]里了
l2 = strlen(argv[1]); // 老扩展名长度
(2) 通过
char command[120],namelist[]="all.lis";
sprintf(command,"DIR/B/A-D/OD *.%s > %s", argv[1],namelist);
system(command);
取得所有要换名的文件名字列表,存放在all.lis文件里,一个文件名一行。
(3)打开 all.lis 文件,
FILE *flist;
if ( (flist = fopen(namelist,"r") ) == NULL ) {
printf("\007Cann't open work file: %s ", namelist);exit(1);
};
一行一行读入:
char current_file_name[64],new_name[64];
while ( fgets( current_file_name, 64, flist) !=NULL ) { 处理};
(4)while 循环 处理:
strcpy(new_name,current_file_name);
l = strlen(new_name); // 文件名全长
strncpy(&new_name[0]+(l-l2),"\0",1); // 文件基本名,含点号,不含扩展名
strcat(new_name,argv[2]); // 新文件名
sprintf(command,"REN %s %s",current_file_name,new_name); // 换名命令
system(command); // 执行换名
完整程序:
#include <stdio.h>
#include <stdlib.h>
FILE *flist;
void main(int argc,char * argv[])
{
int l,l2;
char command[240],namelist[]="all.lis";
char current_file_name[64],new_name[64];
if(argc < 3) {printf("\007Usage: %s old_ext new_ext\n",argv[0]);
printf("For example: %s jpeg jpg\n",argv[0]);
exit(0);
}
l2 = strlen(argv[1]);
sprintf(command,"DIR/B/A-D/OD *.%s > %s", argv[1],namelist);
system(command);
if ( (flist = fopen(namelist,"r") ) == NULL ) {
printf("\007Cann't open work file: %s ", namelist);exit(1);
};
while ( fgets( current_file_name, 64, flist) !=NULL ) {
strcpy(new_name,current_file_name);
l = strlen(new_name);
strncpy(&new_name[0]+(l-l2-1),"\0",1);
strcat(new_name,argv[2]);
strncpy(¤t_file_name[0]+l-1,"\0",1);
sprintf(command,"REN %s %s", current_file_name, new_name);
system(command);
};
fclose(flist);
exit(0);
}
⑷ 用C语言怎么改文件名
我告诉你一个很简单的方法
你加头文件#include<stdlib.h>
在语句中写system("ren
qq.txt
ww.txt");
如果文件不在程序目录下,就在文件名那里加路径就可以了,但路径中的单斜杠(\)要写成双斜杠(\\);
如system("ren
c:\\qq.txt
ww.txt")
如果你要用字符串来命名文件名。就用这个函数strcat()函数来把字符串接起来就可以了,在、前面加头文件#include<string.h>.
如上面的列子可以这么写:
char
a[10]="ww.txt";//这是你要改成的文件名。
char
b[20]="ren
c:\\qq.txt
";
strcat(b,a);//这里把a、b字符串接起来,经过这里b就等于"ren
c:\\qq.txt
ww.txt";了
。
//下面直接又调用
system(b);//因为字符串b
经过和a连接后就是整个你需要填进的参数了。
⑸ CMD批处理修改文件名
1、首先我们打开电脑桌面,点击开始菜单,在搜索框中输入“cmd”。
⑹ 怎么样用vbs或者bat自动修改文件名
不清楚你的实际文件/情况,仅以问题中的样例/说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI
<#:
cls&echooff&cd/d"%~dp0"
rem从原文件名称开头截取16进制字符并进行计算,结果作为新的文件名称
set#=Anyquestion&set_=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%_%%z%
powershell-NoProfile-ExecutionPolicybypass"Get-Content-literal'%~f0'|Out-String|Invoke-Expression"
echo;%#%+%$%%$%/%_%%z%
pause
exit
#>
$b=[Convert]::FromBase64String("IC0tPiA=");
$c=[Text.Encoding]::Default.GetString($b);
$oldfile="d: est C96CD9EF91B_PASS.txt";
$oldname=[System.IO.Path]::GetFileName($oldfile);
$newname=[regex]::replace($oldname,'(?i)^[a-f0-9]+',{
param($m);$v=$m.groups[0].value;$len='X'+$v.length.ToString();
$n=[Convert]::ToInt64($v,16)-1;
$n.ToString($len);
});
$newfile=[System.IO.Path]::GetDirectoryName($oldfile)+''+$newname;
$oldfile+$c+$newname;