Cod sursa(job #1357751)

Utilizator diana_ionDiana Ion diana_ion Data 24 februarie 2015 04:28:17
Problema Convertor Scor 0
Compilator java Status done
Runda rosedu_cdl_2015 Marime 3.27 kb

//package convertor;

import java.util.*;
import java.io.*;

public class Convertor {


    public static void main(String[] args) throws IOException{
        
        BufferedReader input = new BufferedReader( new FileReader("convertor.in"));
        BufferedWriter output = new BufferedWriter ( new FileWriter("convertor.out"));
        String line = new String();
        ArrayList<String> head = new ArrayList<String>();
        ArrayList<String> body = new ArrayList<String>();
        //boolean first = true;
        boolean isNumber = false;
        int lines = 0;
        int elements = 0;
        int count = 0;
        StringBuffer sb = new StringBuffer();
        
        while((line = input.readLine()) != null){
            System.out.println(line.length());
 
            for ( int i = 0; i < line.length(); i++){
                if(line.charAt(i) == '{')
                    lines++;
                if(line.charAt(i) == ':') {
                    System.out.println(sb.toString());
                    if(lines == 1){
                        head.add(sb.toString());
                        elements++;
                    }
                    sb = new StringBuffer();
                    i++;
                    while(line.charAt(i) == ' ')
                        i++;
                    if(line.charAt(i) == '\"'){
                        i++;
                        while(line.charAt(i) != '\"'){
                            sb.append(line.charAt(i));
                            i++;
                        }
                        body.add(sb.toString());
                        System.out.println(sb.toString());
                        sb = new StringBuffer();
                        if ( i < line.length() )
                            i++;
                    }
                    if(Character.isDigit(line.charAt(i))){
                        sb.append(line.charAt(i));
                        i++;
                        while(line.charAt(i) != ' ' && line.charAt(i) != ',' && line.charAt(i) != '}'){
                            sb.append(line.charAt(i));
                            i++;
                        }
                        body.add(sb.toString());
                        System.out.println(sb.toString());
                        sb = new StringBuffer();
                    }
                        
                        
                }
                if(line.charAt(i) == '\"'){
                    i++;
                    while(line.charAt(i) != '\"'){
                        sb.append(line.charAt(i));
                        i++;
                    }
                }
                    
            }
            
        }
        
        System.out.println(elements);
        System.out.println(lines);
        for(int i = 0; i < elements; i++){
            output.write(head.get(i));
            output.write(",");
        }
        output.newLine();
        
        for(int j = 0; j < lines; j++ ){
            for(int i = 0; i < elements; i++){
                output.write(body.get(elements * j + i));
                output.write(",");
            }
            output.newLine();
        }
        
        input.close();
        output.close();
        
    }
    
}