Pagini recente » Cod sursa (job #2288997) | Cod sursa (job #239805) | Cod sursa (job #3146545) | Cod sursa (job #2873459) | Cod sursa (job #1361525)
#include<iostream>
#include<fstream>
#include<cstring>
#include<cstdio>
#include<ctype.h>
using namespace std;
ofstream fout("convertor.out");
#define MAX 10400000
char s[MAX];
int i;
string sir;
string aux;
int main()
{
freopen("convertor.in","r",stdin);
fread(s,1,MAX,stdin);
//afiseaza primul rand din csv
i=0;
int ok=0;
while(s[i]!='{')
i++;
while(s[i]!='}')
{
i++;
if(s[i]=='"')
ok+=1;
if(ok==1 && s[i]!='"')
sir+=s[i];
if(s[i]==',')
{
ok=0;
sir+=s[i];
}
}
sir+=',';
sir+='\n';
//afiseaza restul randurilor
i=0;
ok=0;
while(s[i]!='{')
i++;
while(s[i]!=']')
{
i++;
if(s[i]==':')
ok=1;
if(ok==1 && s[i]!=':' && s[i]!='"' &&s[i]!=',' && s[i]!='\n' && s[i]!='}' && s[i]!='{' && s[i] != '{' && s[i] != ']')
aux+=s[i];
if(s[i]==',')
{
ok=0;
int p=0;
while(aux[p]==' ')
p++;
int u=aux.size()-1;
while(aux[u]==' ')
u--;
for(int k=p;k<=u;k++)
sir+=aux[k];
aux="";
sir+=s[i];
}
if (s[i] == '{')
sir+='\n';
}
int p=0;
while(aux[p]==' ')
p++;
int u=aux.size()-1;
while(aux[u]==' ')
u--;
for(int k=p;k<=u;k++)
sir+=aux[k];
sir+=',';
fout<<sir;
fout.close();
return 0;
}