⑴ 批量重命名文件名為父文件夾名字加序號(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;