Pagini recente » Cod sursa (job #38405) | Cod sursa (job #1833182) | Cod sursa (job #2124450) | Cod sursa (job #47775) | Cod sursa (job #1359430)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
unsigned int dt=0;
FILE *f = fopen("convertor.in" , "rt" ), *g = fopen ("convertor.out" , "wt");
char b , *tag = (char*) malloc( 1024 * sizeof(char) );
while ( fgetc( f ) != '"' )
continue;
while ( b != '}')
{
//b == '"'
b = fgetc(f);
while ( b != '"')
{
fputc( b , g );
b = fgetc(f);
}
// b == '"'
fputc(',' , g );
b = fgetc(f);//scap de "
while ( ( ( b < '1' ) || ( b > '9' ) ) && ( b != '"' ) )
b = fgetc(f);
//b fie e cifra fie e ghilimea
if ( b == '"' )
{
b = fgetc(f);
while ( b != '"')
{
tag[dt] = b;
dt++;
b = fgetc(f);
}
}
else
{
while ( (b > 47) && ( b < 58 ) )
{
tag[dt] = b;
dt++;
b = fgetc(f);
}
}
tag[dt] = ',';
dt++;
b = fgetc(f);
while ( ( b != '}' ) && ( b != '"') )
b = fgetc(f);
}
fputc( '\n' , g );
tag[dt] = '\0';
fputs( tag , g );
fputc( '\n' , g );
free(tag);//b == '}'
while ( b != '"' )
b = fgetc(f);
while ( b != EOF )//prima data e ","
{
while ( b != '}' )
{
while ( fgetc( f ) != '"' )
continue;//citesc cheia
//b == '"'
b = fgetc( f );
while ( ( ( b < '1' ) || ( b > '9' ) ) && ( b != '"' ) )
b = fgetc(f);
if ( b == '"' )
{
b = fgetc(f);
while ( b != '"' )
{
fputc( b , g );
b = fgetc(f);
}
b = fgetc(f);
}
else
{
while ( (b > 47) && ( b < 58 ) )
{
fputc( b , g );
b = fgetc(f);
}
}
fputc( ',' , g );//b e spatiu virgula sau ghilimele
while ( ( b != '}' ) && ( b != '"') )
b = fgetc(f);
}
fputc( '\n' , g );
//b=='}'
b = fgetc( f );
while ( ( b != '"' ) && ( b != EOF ) )
b = fgetc( f );
}
fclose(g);
fclose(f);
return 0;
}