Pagini recente » Cod sursa (job #1742980) | Cod sursa (job #210165) | Cod sursa (job #1816772) | Cod sursa (job #1789430) | Cod sursa (job #1359294)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sys/types.h>
int main()
{
FILE *file,*out;
file = fopen("convertor.in","r");
out = fopen("convertor.out","w");
char *linie = malloc(1024*sizeof(char));
int i = 0,j,k,poz = 0,ok = 0;
size_t lung = 0;
ssize_t read;
while ((read = getline(&linie, &lung, file)) != -1)
{
for(i = 0;i < strlen(linie);i++)
{
if(linie[i] == '"')
{
j = i + 1;
while(linie[j] == ' ')
j++;
if(linie[j] != ':')
poz = i + 1;
if(linie[j] == ':' && ok == 0)
{
for(j = poz;j < i;j++)
fprintf(out,"%c",linie[j]);
fprintf(out,",");
}
}
if(linie[i] == '}')
ok = 1;
}
}
fprintf(out,"\n");
fclose(file);
file = fopen("convertor.in","r");
while ((read = getline(&linie, &lung, file)) != -1)
{
for(i = 0;i < strlen(linie);i++)
{
if(linie[i] == ':')
{
j = i + 1;
while(linie[j] == ' ')
j++;
if(linie[j] == '"')
poz = j + 1;
else
poz = j;
}
if(linie[i] == ',')
{
j = i - 1;
while(linie[j] == ' ')
j--;
if(linie[j] != '}')
{
k = j;
if(linie[j] == '"')
k--;
for(j = poz;j <= k;j++)
fprintf(out,"%c",linie[j]);
fprintf(out,",");
}
}
if(linie[i] == '}' && linie[i] != ']')
{
j = i - 1;
while(linie[j] == ' ')
j--;
k = j;
if(linie[j] == '"')
k--;
for(j = poz;j <= k;j++)
fprintf(out,"%c",linie[j]);
fprintf(out,",");
fprintf(out,"\n");
}
if(linie[i] == ']')
{
j = i - 1;
while(linie[j] == ' ')
j--;
k = j;
if(linie[j] != '}')
{
if(linie[j] == '"')
k--;
for(j = poz;j <= k;j++)
fprintf(out,"%c",linie[j]);
fprintf(out,",");
}
}
}
}
fclose(file);
fclose(out);
free(linie);
}