C/C++ code#include
void main()
{
FILE *from,*to;
int slen=0;
char str[256],s[50],ch1,ch2,*p;
int cnt;
//clrscr();
if((from=fopen("from.txt","r"))==NULL)
{
printf("Can 't open read file!\n");
exit(1);
}
if((to=fopen("to.txt","w"))==NULL)
{
printf("Can 't open write file!\n");
exit(1);
}
str[0]= '\0';
fgets(str,256,from);//这里我假设文件中只有一行字符
p=str;
//ch1=*p++;
//ch2=*p++;
slen=strlen(str);
while(slen)
{
ch1=str[slen-1];
if(ch1==0)
{
--slen;
continue;
}
cnt=1;
for(int i=0;i
{
if(str[i]==ch1)
{
++cnt;
str[i]=0;
}
}
sprintf(s,",%d-%c",cnt,ch1); //把分隔豆号打在了前面.破坏编码的巧合.记事本就能正确识别了.
puts(s);
fputs(s,to);
//ch1=ch2;
//if(ch2)
// ch2=*p++;
--slen;
}
fclose(from);
fclose(to);
}