Pagini recente » Cod sursa (job #3284465) | Cod sursa (job #1684186) | Cod sursa (job #2143347) | Cod sursa (job #1698261) | Cod sursa (job #1337738)
import java.lang.*;
import java.nio.file.*;
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
StringBuffer sbuf = new StringBuffer();
StringBuffer buf = new StringBuffer();
String text, toSplit, key, value;
int begin, end, begin_pair, end_pair;
int quote;
String[] result;
boolean firstPass = true;
File file = new File("convertor.out");
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
Scanner sc = new Scanner(new File("convertor.in"));
while (sc.hasNextLine())
sbuf.append(sc.nextLine());
text = sbuf.toString();
begin = text.indexOf('{');
while (begin != -1) {
end = text.indexOf('}', begin);
begin_pair = begin + 1;
end_pair = text.indexOf(',', begin_pair);
while (end_pair != -1) {
toSplit = text.substring(begin_pair, end_pair);
result = toSplit.split(":");
key = result[0];
value = result[1];
quote = key.indexOf('\"');
if (quote != -1) {
key = key.substring(quote + 1);
quote = key.indexOf('\"');
key = key.substring(0, quote);
}
key = key.trim();
if (firstPass)
bw.write(key + ",");
quote = value.indexOf('\"');
if (quote != -1) {
value = value.substring(quote + 1);
quote = value.indexOf('\"');
value = value.substring(0, quote);
}
value = value.trim();
if (firstPass)
buf.append(value + ",");
else
bw.write(value + ",");
if (end_pair == end)
break;
begin_pair = end_pair + 1;
end_pair = text.indexOf(',', begin_pair);
if (end_pair > end || end_pair == -1)
end_pair = end;
}
if (firstPass) {
bw.newLine();
bw.write(buf.toString());
bw.newLine();
firstPass = false;
} else
bw.newLine();
begin = text.indexOf('{', end);
}
bw.close();
}
}