char r;
in=fopen("a.jsp","r");
out=fopen("b.jsp","w");
while(!feof(in))
{
if((r=getc(in))==" ")
continue;
if((r=getc(in))=="/*")
{while(getc(in)!="*/")
{r=fgetc(in);}
}
else
fwrite(r,sizeof(char),1,out);
}
in=fopen("a.jsp","r");
out=fopen("b.jsp","w");
while(!feof(in))
{
if((r=getc(in))==" ")
continue;
if((r=getc(in))=="/*")
{while(getc(in)!="*/")
{r=fgetc(in);}
}
else
fwrite(r,sizeof(char),1,out);
}
2.打开后每次ReadString到字符串str中
3.str.TrimLeft(),str.TrimRight();
4.进行判断。如果str.Find("\/*"),就赋为空
int CleanAsp(char *FileName)
{
CFile MyFile;
char *pOldFile,*pNewFile;
int FileLength;
if (!MyFile.Open(FileName,CFile::modeRead,NULL))
return -1;
FileLength=MyFile.GetLength();
pOldFile=(char *)malloc(FileLength);
pNewFile=(char *)malloc(FileLength);
MyFile.Read(pOldFile,FileLength);
MyFile.Close();
int OldNum,NewNum;
NewNum=0;
for (OldNum=0;OldNum<FileLength;OldNum++)
{
if (pOldFile[OldNum]=='/'&&pOldFile[OldNum+1]=='*') //发现/*
{
OldNum=OldNum+2;
while (!(pOldFile[OldNum]=='*'&&pOldFile[OldNum+1]=='/'))
{
if (OldNum==(FileLength-2))
return -1; //文件不对
OldNum++;
}
OldNum++;
}
else if (pOldFile[OldNum]==13&&pOldFile[OldNum+1]==10) //发现回车
{
pNewFile[NewNum]=pOldFile[OldNum];
NewNum++;
OldNum++;
pNewFile[NewNum]=pOldFile[OldNum];
NewNum++;
OldNum++;
while (pOldFile[OldNum]==32)
{
OldNum++;
if (OldNum==FileLength)
return -1; //超过文件长
}
OldNum--;
}
else
{
pNewFile[NewNum]=pOldFile[OldNum];
NewNum++;
}
}
pNewFile[NewNum]=0;
if (!MyFile.Open(FileName,CFile::modeWrite|CFile::modeCreate,NULL))
return -1;
MyFile.Write(pNewFile,strlen(pNewFile));
MyFile.Close();
return 0;
}
i=0 success
但是类型不匹配
cleanasp的参数是char*。。编辑框的变量类型cstring
不能相互转换
怎么办?
大家救我?????
怎么办?
如:
char aspcontent[10000];
strcpy (aspcontent,m_editvalue);
当然,数组的大小可以动态分配为文件的长度
CleanAsp((LPCSTR)str);
//但是类型不匹配
//cleanasp的参数是char*。。编辑框的变量类型cstring
//不能相互转换
//怎么办?
//大家救我?????
转换一下
char convert[100];
strcpy (convert,str);
CleanAsp(convert);