我想提取保存在文本文件中的信息并将其转换为ArrayList。该文件由一个数字组成,以便对该行和String atributte进行定位。问题是我不知道如何将encuestas转换为数组,并且当我尝试使用listas.add时它说可能没有初始化变量。
public Lista Cargar_Listas(){
ArrayList <Militante> militantes= new ArrayList <>();
Lista lista = new Lista(militantes);
try{
FileReader fr = new FileReader("archivo.txt");
BufferedReader entrada = new BufferedReader(fr);
int j=0;
String s;
String nombrem, apellidos, profesion, siglas_partido, carne;
int edad;
char genero;
double cuota;
String[] encuesta;
while((s=entrada.readLine())!=null){
if(j==0) nombrem=s;
if(j==1) apellidos=s;
if(j==2) edad=Integer.parseInt(s);
if(j==3) profesion=s;
if(j==4) genero=s.charAt(0);
if(j==5) siglas_partido=s;
if(j==6) encuesta={s};
if(j==7) cuota=Double.parseDouble(s);
if(j==8) carne=s;
j++;
if(j>8){
j=0;
lista.add(new Militante(nombrem, apellidos, edad, profesion, genero, siglas_partido, encuesta, cuota, carne));
}
}
entrada.close();
}
catch(java.io.FileNotFoundException fnfex){
System.out.println("Archivo no encontrado: "+fnfex);}
catch(java.io.IOException ioex){}
return lista;
}
答案 0 :(得分:0)
编辑: 输入的第七行是什么样的:它是逗号分隔的行吗? 使用:
encuesta = s.split(",");
或者,你的问题可能在Militante班。 它可能包含List&lt;&gt; encuesta,构造函数可能需要List。 但是,您传递的是String []。
尝试:
militantes.add(new Militante(nombrem, apellidos, edad, profesion, genero, siglas_partido, Arrays.asList(encuesta), cuota, carne)));
如果这不起作用,请编辑您的帖子以添加Militante课程。 谢谢。