Cod sursa(job #1345636)

Utilizator miruna.barbuBarbu Miruna Stefania miruna.barbu Data 17 februarie 2015 19:32:43
Problema Convertor Scor 0
Compilator java Status done
Runda rosedu_cdl_2015 Marime 1.74 kb
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintWriter;
//import java.util.ArrayList;
import java.util.Scanner;


public class Main {

	public static void main(String[] args) throws IOException {

		Scanner reader = new Scanner(new FileInputStream("convertor.in"));
		PrintWriter writer = new PrintWriter("exemplu.out");
		
		String line = "";
		//ArrayList<String> lista = new ArrayList<String>();
		int cate = 0, cat = 0;
		
	// Citire si afisare primul rand din fisierul de out	
		while(true) {
			line = reader.nextLine();
			
			System.out.println(line);
			String[] s = line.split("\""); 
						
			for (int i = 0; i < s.length - 1; ++i) {
				System.out.println(s[i]);
				if (s[i].contains("}")) {
					break;
				}
				
				if (s[i+1].contains(":")) {
					writer.write(s[i] + ",");
					//lista.add(s[i]);
					cate++;
				}
			}
			
			if (line.contains("}")) {
				writer.write("\n");
				break;
			}
				
		}
	
		reader.close();
		reader = new Scanner(new FileInputStream("convertor.in"));
		
	// Cititrea si afisarea cuvintelor corespunzatoare
		cat = 0;
		while(reader.hasNextLine()) {
			
			line = reader.nextLine();
			System.out.println(line);
			line = line.replaceAll(",", ":");
			System.out.println(line);
			String[] s = line.split(":"); 
						
			for (int i = 0; i < s.length; ++i) {
				if (i % 2 == 1) {
					s[i] = s[i].replaceAll("\"", "");
					s[i] = s[i].replaceAll("}", "");
					s[i] = s[i].replaceAll("]", "");
					s[i] = s[i].replaceAll("^\\s+|\\s+$", "");
					
					writer.write(s[i] + ",");
					if (++cat == cate) {
						writer.write("\n");
						cat = 0;
					}
				}
			}
		}
	
		reader.close();
		writer.close();
		
	}

}