Cod sursa(job #1358929)

Utilizator ana_mirelaIrimia Mirela ana_mirela Data 24 februarie 2015 20:38:33
Problema Convertor Scor 70
Compilator java Status done
Runda rosedu_cdl_2015 Marime 1.56 kb
import java.io.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
 
 
public class Main {
     
    public static void main(String[] args) throws IOException{
         
        ArrayList<String> keys = new ArrayList<>();
        ArrayList<String> values = new ArrayList<>();
        String tok;
        int i, count = 0;
        PrintWriter pw = new PrintWriter("convertor.out");
        Scanner s = new Scanner(new FileInputStream("convertor.in"));
        s.useDelimiter("[\\[\\],{}\n:]");
         
        while (s.hasNext()){
            tok = s.next();
            //daca token-ul citit nu este format doar din whitespace-uri
            if (tok.trim().length() > 0){
                tok = tok.trim();
                
                //daca token-ul are ghilimele se elimina
                if (tok.charAt(0) == '"')
                    tok = tok.substring(1, tok.length() - 1);
                
                //count are valoare para pentru chei si impara pentru valori
                if (count % 2 == 0){
                    if (!keys.contains(tok)){
                        keys.add(tok);
                        pw.write(tok + ",");
                    }
                }
                else
                    values.add(tok);
                 
                count++;
            }
        }
 
    s.close();
         
    for (i = 0; i < values.size(); i++){
        if (i % keys.size() == 0)
            pw.write("\n");
        pw.write(values.get(i) + ",");
    }
    pw.close();
    }
}