Mi sono trovato a dover modificare una stringa da cosi:
codice:
"Rottura filo posizione 001 + 06/09/2011 13.27.24"
a
codice:
"11/10/13;13:06:50;Mod3;TG_TOT:1;TG_MOD:1;TRUE"
Non guardate i dati perche non sono gli stessi è fatto solo per dare un'idea della formattazione
La parte "Mod:", è una costante che va inserita cosi com'è
"TG_TOT:", "TG_MOD:", vanno affiancate al numero "001" cosi da avere il risultato sopra citato
Il "+" diventa TRUE
La data deve avere un cambio di formato e altre 2-3 modifiche stupide.
La parte che mi interessava maggiormente era la scomposizione della stringa e la ricomposizione, io mi sono arrangiato alla brutto dio:
codice:
public static void main(String[] args) {
String name = "Rottura filo posizione 001 + 06/09/2011 13.27.24";
String name1 = name.substring(23, 26); //numero tagl
String name2 = name.substring(66, 67); //true or false
String name3 = name.substring(68, 78); //data
String name4 = name.substring(79, 87); //orario
String name5 = "Mod:X";
String name6 = "TG_TOT:";
String name7 = "TG_MOD:";
String name8 = ";";
name = name.substring(23);
java.util.Date dateStandard = null;
try {
dateStandard = new SimpleDateFormat("dd/MM/yyyy").parse(name3);
} catch (java.text.ParseException e) {
e.printStackTrace();
}
String dateFormatted = new SimpleDateFormat("yy/MM/dd").format(dateStandard);
name3 = dateFormatted;
name = name3+= name8 += name4+= name8 += name5+= name8 += name6 += name1 += name8 += name7 += name1 += name8 += name2;
name = name.replaceAll("\\+", "TRUE");
name = name.replaceAll("\\-", "FALSE");
name = name.replaceAll("\\.", ":");
System.out.println(name);
}
}
Potreste dare un occhio e vedere dove si puo modificare in un modo piu decente.
Thx