그래서이 문제가 일주일 동안 지속되었습니다.파일에서 정수 값의 열을 읽은 후 0이됩니다.
내가 읽고있는 파일의 마지막 열에서 값을 가져와야합니다. 하지만 내가 while 루프 밖에서 배열을 읽으려고하면 값 대신 0이 생깁니다.
하지만 while 루프 내부에서 동일한 배열을 읽으면 완벽하게 값을 얻을 수 있습니다.
BufferedReader br2 = new BufferedReader(new FileReader("/home/manofsteel/yeast_training.txt"));
// Starting to read a file line by line.
while((line = br2.readLine()) != null)
{
row = 0;
String[] valsNew = line.trim().split("\\s+"); /* Getting rid of all
spaces since the file
contains a lot of them. */
cla = new int[lines];
cla[row] = Integer.parseInt(valsNew[8]); /* 8 because i need the
values from last column. */
row++;
}
for(int i=0;i<cla.length;i++)
{
// Trying to print back that array.
System.out.println("x"+cla[i]);
}
}
내가 무엇입니까 출력은
x0
x0
x0
x0
내가 원하는 출력
x4
x1
x1
x1
x2
x7
x2
x7
어떤 제안을 환영합니다.
내가 입력 파일을 공유해야한다고 생각한다면. 저에게 알려주세요.
감사합니다.
cla = new int[lines];
또한, 저는 잘 모르겠어요 :
'cla = new int [lines];' while 루프 – maskacovnik
각 반복에서 배열에 새로운 배열 (0 만 포함)을 덮어 씁니다 :'cla = new int [lines];'. – Berger
위의'row = 0' while while loop도 – maskacovnik