Pagini recente » Cod sursa (job #1680573) | Cod sursa (job #34444) | Cod sursa (job #2927714) | Cod sursa (job #179253) | Cod sursa (job #1361690)
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define MARIME 4096
int main () {
char v[MARIME];
int ok=0,i=0,len;
FILE *f = fopen ("convertor.in","r"),
*g = fopen ("convertor.out","w");
while ( !feof(f) ) {
if (!(fread (v,sizeof(char),MARIME,f))) break;
len=strlen(v);
for ( i=0 ; i < len ; i++) {
if (v[i] == '}') {
i=len;
fprintf (g,"\n");
break;
}
// if (v[i]=='[')
// ok=0;
if ( !( v[i] == '"' || isdigit(v[i])) )
continue;
if (v[i] == '"'){
ok++;
i++;
if (ok % 4 == 1 ) {
while ( v[i]!='"' && i < len ){
fprintf (g,"%c",v[i]);
i++;
}
fprintf (g,",");
}
else while ( v[i]!='"' && i < len )
i++;
ok++;
continue;
}
if (isdigit (v[i])) {
ok+=2;
i++;
while ( isdigit(v[i]) && i < len )
i++;
if( !( i+1 < len))
break;
}
}
}
rewind (f);
while ( !feof(f) ) {
if (!(fread (v,sizeof(char),MARIME,f)))break;
len=strlen(v);
for ( i=0 ; i < len ; i++) {
if (v[i] == '}') {
fprintf (g,"\n");
continue;
}
// if (v[i]=='[')
// ok=0;
if ( !( v[i] == '"' || isdigit(v[i])) )
continue;
if (v[i] == '"'){
ok++;
i++;
if (ok % 4 == 3 ) {
while ( v[i]!='"' && i < len ){
fprintf (g,"%c",v[i]);
i++;
}
fprintf (g,",");
}
else while ( v[i]!='"' && i < len )
i++;
ok++;
continue;
}
if (isdigit (v[i])) {
ok++;
fprintf (g,"%c",v[i]);
i++;
if (ok % 4 == 3 )
while ( isdigit(v[i]) && i < len ){
fprintf (g,"%c",v[i]);
i++;
}
fprintf (g,",");
ok++;
if( !( i+1 < len)) break;
}
}
}
fclose (f);
fclose (g);
return 0;
}