de entrada te digo, un array en java no es dinamico, hasta donde me acuerdo
, si quieres utilizar tamaños distintos en un array, debes crear el objeto de nuevo, para leer cualquier cantidad de lineas de un TXT y pasarlo a un array String[] la siguiente clase te ayudara
se llama cosa.java (yo y mis nombres
)
Código PHP:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.Vector;
/**
* @web http://jc-mouse.blogspot.com/
* @author Mouse
*/
public class cosa {
private String[] myArray;
private Vector v = new Vector(4,1);
//para leer
private File archivo = null;
private FileReader fr = null;
private BufferedReader br = null;
public cosa(){
System.out.println("cosa de locos");
}
private void leer(){
try {
archivo = new File ("lista2.txt");
fr = new FileReader (archivo);
br = new BufferedReader(fr);
// Lectura del fichero linea por linea
String linea;
while((linea=br.readLine())!=null)
v.addElement(linea);
myArray = new String[v.size()];
myArray = (String[]) v.toArray(myArray);
}
catch(Exception e){
e.printStackTrace();
}
}
public String[] getMyArray(){
leer();
return this.myArray;
}
}
asi puedes leer cualquier archivo de texto en linea, por ejemplo:
Cita: Elvis_Presley Jailhouse_Rock Rock RCA 1991 17 72,23
Massive_Attack Protection
Massive_attack Blue_Lines
Test_Iscicles Circle_Square_Triangle Ska NoLabel 1995 2 9,12
te lo dice jc mouse Bolivia Av. Siempre Viva 69
y utilizando la clase:
Código PHP:
public class Main {
public static void main(String[] args) {
cosa c = new cosa();
String[] miArray = c.getMyArray();
//solo para mostrar en consola que si lee
for(int i=0;i<miArray.length;i++){
System.out.println(miArray[i]);
}
}
}
y listo
se malo