Muy buenas a todos, espero que me perdoneis estas novatadas de java :o. El problema es que tengo un codigo en java que suelta objetos en un txt de la siguiente forma:
a,a,4.0,0.04,5
Siendo de la siguiente forma: String,String,float,float,int
La cuestion seria como puedo hacer lo contrario, a partir del fichero leer la linea y que lo transforme en un objeto.
Cuando termine el proyecto entero lo publico para que le podais echar un ojo.
No sé si te servirá lo que te voy a decir hermano rollt pero si no he entendido mal lo que quieres es leer el jtext y coger por separado los Strings de los float.
Bueno hermano pues lo primero que se me ocurre es Stringtokenizer y lo spliteas a tu gusto un pequeño ejemplo
String url = "http://howtodoinjava.com/java-initerview-questions";
StringTokenizer multiTokenizer = new StringTokenizer(url, "://.-");
while (multiTokenizer.hasMoreTokens())
{
System.out.println(multiTokenizer.nextToken());
}
Como podrás observar splitea los slash espero que lo comprendas es sencillo, haz lo mismo pero con las "," entonces el primer valor y el segundo los metes en variables de tipo String y los que sean Floats en sus correspondientes variables float
Espero haberte sido de utilidad
Solucion:
he cambiado la forma de guardarlo y guardo una variable en cada linea.
private void cargarFichero(){
int i;
String obj;
try{
File archivo = new File("objetos.txt");
FileReader fr=new FileReader(archivo);
BufferedReader br = new BufferedReader(fr);
while((obj = br.readLine()) != null){
String name = obj;
obj = br.readLine();
String des = obj;
obj = br.readLine();
float pr = Float.parseFloat(obj);
obj = br.readLine();
float I = Float.parseFloat(obj);
obj = br.readLine();
int s = Integer.parseInt(obj);
nuevoProducto2(name, des, pr, I, s);
}
}
catch(IOException e){
System.out.println("Error cargando objetos.txt");
}
}