为什么改不了名字????
我写了一个改名得软件,只是针对我的某一个文件夹的,但是却改不了名,不知为何?代码如下:
#include "stdlib.h"
#include "stdio.h"
#include "ctype.h"
#include "string.h"
void ReadTitle(FILE *fp,char newname[255])
{
int i;
char n;
fread(newname,174,1,fp);
for(i=0;(n=fgetc(fp))!='<';i++)
{
newname[i]=n;
}
newname[i]='\0';
printf("%s\n",newname);
for(;i<255;i++)
newname[i]='\0';
}
int main()
{
FILE *fp;
char oldname[255],newname[255],order[255]="ren ";
int flat;
for (int i=14001;i<=14997;i++)
{
_itoa(i,oldname,10);
strcat(oldname,".htm");
printf("%s\n",oldname);
if((fp=fopen(oldname,"r"))==NULL)
{
printf("Open File Error!!!\n");
continue;
}
else
{
ReadTitle(fp,newname);
}
if(flat=rename(oldname,newname))
printf("success\n");
fclose(fp);
}
return 0;
}
其中打印出的oldname和newname都是正确的,程序也显示出success,但文件就是不改名,文件的属性也不是只读,不知为何?