Cod sursa(job #1349115)

Utilizator achirialexAlexandru Achiritoaei achirialex Data 19 februarie 2015 23:42:39
Problema Convertor Scor 0
Compilator c Status done
Runda rosedu_cdl_2015 Marime 2.44 kb
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

int main(void) {
    FILE *fin = fopen("convertor.in", "r");
    FILE *fout = fopen("convertor.out", "w");
    char linie[1025];
    char *auxiliar;
    int i, semHead = 0, contElem, lungime = 0;
    int counting = 0;
    char elements[256][1025];
    char aux;
    char *cuv;
    char *sep = "\"";
    while( !feof ( fin ) ) {
    	fread(&aux, sizeof(char), 1, fin);// = fgetc(fin);//) != EOF){//fgetcscanf(fin, "%c", &aux) != EOF){
        if(aux == '{'){
            lungime = 0;
            counting = 1;
        }
        if(aux != '\n' && counting == 1 ){
//            if(isspace(aux) || aux < 0){
//                if(linie[lungime - 1] != ':'){// && linie[lungime - 1] != ',' && linie[lungime - 1] != '"' ){
//                    linie[lungime] = aux;
//                    lungime++;
//                }
//            }
//            else{
//                if(aux != '"' && linie[lungime - 1] == ':'){
//                    linie[lungime] = '"';
//                    lungime++;
//                }
//                if(aux == ',' && linie[lungime - 1] != '"'){
//                    linie[lungime] = '"';
//                    lungime++;
//                }
//                if(aux == '}' && linie[lungime - 1] != '"'){
//                    linie[lungime] = '"';
//                    lungime++;
//                }
                linie[lungime] = aux;
                lungime++;
//            }
        }
        if(aux == '}' && counting == 1){
        	linie[lungime] = '\0';
//            contElem = 0;
//            auxiliar = strdup(linie);//strcpy(auxiliar, linie);
//            sep = "\"";
//            cuv = strtok(auxiliar, sep);
//            while(cuv != NULL){
//                strcpy(elements[contElem], cuv);
//                contElem++;
//                cuv = strtok(0, sep);
//            }
//            if(semHead == 0){
//                for(i = 1; i < contElem - 1; i = i + 4)
//                    fprintf(fout, "%s,", elements[i]);
//                semHead = 1;
//                fprintf(fout, "\n");
//            }
//            for(i = 3; i < contElem; i = i + 4)
//                fprintf(fout, "%s,", elements[i]);
//            fprintf(fout, "\n");
////            lungime = 0;
            counting = 0;
            printf("%s\n", linie);
            memset(linie, 0, 1024);
//    		printf("%c", aux);
        }
    }
    fclose(fin);
    fclose(fout);
    return 0;
}