㈠ VB批量修改文件名
我有dir搜索指定目录所有文件的代码。改名也很简单,但是你的要求很模糊,如果有意思请详细说明要求,我给你代码,发消息即可。
㈡ 请问如何写个程序批量更改文件名
用VB写个程序可以做到。1.首先定位到包含这些文件的目录;2.循环遍历目录中的每个文件; 2.1. 判断每个文件名是否包含“刘德华”; 2.2. 如果包含,先把文件名中除去“刘德华”的部分取出来,然后通过VB函数调用DOS命令rename,把此文件重新命名为刚才取出来的部分文件名; 2.3. 如果没有包含,则跳过; 2.4. 判断还有没有下一个文件,如果有,处理继续;如果没有,跳出循环;
㈢ 利用vb精简版写一个可以修改文件名的程序
PrivateSubForm_Click()
OnErrorResumeNext
DimsTip$,sTitle$
DimsPath$
DimbValidPathAsBoolean
bValidPath=False
sTitle="请输入文件的路径名称"
sTip="请在下面输入路径名称,"+vbCrLf+"你可以通过文件浏览器进行复制,然后粘贴到这里!"+vbCrLf
DoWhileNotbValidPath
sPath=InputBox(sTip,sTitle,"C:WINDOWSemp")
IfsPath=""Then
MsgBox"你取消了程序的运行",vbInformation+vbOKOnly,"取消输入"
ExitSub
ElseIfLen(sPath)<3Then
MsgBox"输入的长度太短!"+vbCrLf+sPath+vbCrLf+"不符合要求…"+vbCrLf+"请重新输入",vbInformation+vbOKOnly,"输入错误"
ElseIfDir(sPath,vbDirectory)<>""Then
bValidPath=True
Else
MsgBox"输入的路径错误!"+vbCrLf+"找不到您输入的路径名称…"+vbCrLf+sPath+vbCrLf+"请重新输入",vbInformation+vbOKOnly,"输入错误"
EndIf
Loop
Me.Caption="http://..com/question/103564688.html?fr=uc_push"
Me.AutoRedraw=True
Me.ForeColor=RGB(0,0,200)
Me.Cls
Print"输入的文件路径为:";sPath
IfRight(sPath,1)<>""ThensPath=sPath&""
DimsExt$
sExt=InputBox("输入文件类型","请输入","*.*")
IfsExt=""Then
MsgBox"你取消了程序的运行",vbInformation+vbOKOnly,"取消输入"
ExitSub
EndIf
DimsDir$
sDir=sPath&sExt
DimsRen$
sRen=InputBox("更改的文件名称","请输入","Bak_")
DimsFile$,srFile$,iCnt%
iCnt=0
sFile=Dir(sDir,vbHidden+vbSystem)
DoWhileLen(sFile)>0
iCnt=iCnt+1
srFile=sRen
IfInStr(1,sFile,".")ThensrFile=srFile&CStr(iCnt)&Right(sFile,Len(sFile)-InStr(1,sFile,".")+1)
Print"把";sFile,"改名为:";srFile
NamesPath&sFileAssPath&srFile
'Print"把";sFile,"复制为:";srFile
'FileCopysPath&sFile,sPath&srFile
sFile=Dir
Loop
Print"改名完成!!!"
EndSub
PrivateSubForm_Load()
Form_Click
EndSub
㈣ 用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++程序想改文件名怎么办
工程名和生成的文件在计算机的文件管理器中就可以管理,如果代码内部有创建工程时引用的名称,在代码中搜索,逐个改掉。
㈥ 用C语言批量更改文件名
#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <dirent.h>#include <string.h>#include <iconv.h>#include <errno.h>/*int to_iconv(char *in,size_t in_bytes,char *out,size_t out_bytes,const char *from,const char *to)*/int to_iconv(char *in,char *out,size_t out_bytes,const char *from,const char *to){iconv_t cd;size_t in_bytes=strlen(in);//size_t out_bytes;if((cd=iconv_open(to,from)) == (iconv_t)-1){perror("iconv_open");return -1;}if(iconv(cd,&in,&in_bytes,&out,&out_bytes) == -1){perror("iconv");return -1;}iconv_close(cd);return 0;}void read_and_iconv(char *path,const char *from,const char *to){DIR *dirp;struct dirent *dir;struct stat buf;char temp[512]; //用于保存转换后的文件名称if((dirp=opendir(path)) == NULL) //读取文件夹{perror("opendir");return;}chdir(path); //进入到该文件夹内部while(dir=readdir(dirp)) //读取该文件夹下所有文件{if((strcmp(dir->d_name,".") == 0) || (strcmp(dir->d_name,"..") == 0)) //过滤掉.以及..文件夹,不然会死循环的continue;bzero(temp,sizeof(temp));to_iconv(dir->d_name,temp,sizeof(temp),from,to); //进行编码转换rename(dir->d_name,temp); //进行重命名printf("rename %s to %s\n",dir->d_name,temp);stat(temp,&buf);if(S_ISDIR(buf.st_mode)) //判断当前读取的文件是否为文件夹{read_and_iconv(temp,from,to); //如果是则递归处理chdir(".."); //处理完成后一定要记得返回上一层目录哦,不然其它文件就无法处理了}}closedir(dirp);}int main(int argc,char **argv){read_and_iconv(argv[1],argv[2],argv[3]);/*第一个参数是要转换的文件夹所在的文件夹名称*第二个参数是文件名称所使用的编码(这里为GBK)*第三个参数是要转换成何种编码(这里为UTF-8)*/return 0;}
㈦ C++有代码怎么修改文件名
1、修改文件名,可要调用操作系统提供的API函数,比如Windows上的MoveFile(),也可以直接调用cmd中已提供的重命名命令——rename。2、下面的示例代码,调用rename命令来重名命文件名。
#include<stdio.h>#include<stdlib.h>#include<string.h>intmain(intac,char*pav[]){if(ac!=3){printf("程序名要重命名的文件路径新的文件名");printf("示例:test.exe1.txt2.txt");return0;}if(access(pav[1],0)!=0){printf("不存在该文件");return0;}charszcmd[256]="cmd/crename";strcat(szcmd,pav[1]);strcat(szcmd,"");strcat(szcmd,pav[2]);system(szcmd);return0;}
㈧ 怎么用c++编写一个文件重命名程序
代码如下,自己琢磨下:(C-FREE3.5调试通过)#include <iostream>#include <string>#include <fstream>int main(){char filename[40];char newfilename[40];//新名称cout<<"请输入要新建的文件名:\n";cin>>filename;ofstream file; //创建个对象file.open(filename); //创建文件file.close() ; //关闭文件char str[200]="";strcat(str,"del ");strcat(str,filename);// system(str); //删除文件char str1[200]="";strcat(str1,"move ");strcat(str1,filename);strcat(str1," ");cout<<"请输入新文件名:\n";cin>>newfilename;strcat(str1,newfilename);system(str1) ;//重命名文件}
㈨ 跪求程序设计:写一个批量修改文件名的程序(最好用JAVA,C语言,C++也行)
public class ReNameFile {public static String path = "输入你要重命名的磁盘或文件夹路径";public static void main(String[] args){ reName(path);}public static void reName(String filePath){File rootFile = new File(filePath);if(rootFile.isDirectory()){File files[] = rootFile.listFiles();if(files!=null && files.length>0){for(int i=0;i<files.length;i++){File f = files[i];if(f.isDirectory()){reName(f.getAbsolutePath());}else{f.renameTo(new File("输入你要重命名的名字"));//记得将路径也输入}}}}else{rootFile.renameTo(new File("输入你要重命名的名字"));//记得将路径也输入}}}如果不明白,请继续提问。
㈩ C++已经做好的程序怎么改文件名呢小白一个,求详细一点的步骤…
工程名和生成的文件在计算机的文件管理器中就可以管理,如果代码内部有创建工程时引用的名称,在代码中搜索,逐个改掉。
未经允许不得转载:山九号 » 编写程序改变文件名|跪求程序设计:写一个批量修改文件名的程序(最好用JAVAC语言C++也行)