파일을 읽고 배열에 데이터를 저장하려고합니다. 파일의 각 행에있는 숫자의 양에 따라 선택한 배열입니다. 나는 색인을 위해 한계를 고수하고있다. 내가 뭘 잘못하고 있고, 내 코드가 내가하려는 일에 맞는거야?파일을 읽고 여러 배열에 데이터를 저장하는 중 오류가 발생했습니다.
내가 읽고있는 파일은 다음과 같습니다.
>2.0 5.0 3.5
>
>5.2 0.5 4.8
>
>1.0
>
>2.5
3 개의 숫자가있는 줄이 상자 배열 안에 저장되고 1 개의 번호가있는 줄이 볼 배열 안에 저장되기를 원합니다. 그러나, 나는이 배열로 라인의 양을 저장할 수 싶지 단지이 4
이 지금까지 내 코드입니다.
import java.io.*;
public class MainProg{
public static void main(String[] args) throws IOException{
FileReader fr = new FileReader("info.txt");
BufferedReader br = new BufferedReader(fr);
String nums;
int count =0;
int lineNo = 0;
while((nums = br.readLine()) != null){
String numbers[] = nums.split(" ");
double[][] ball = new double[lineNo][];
if(numbers.length == 3){
for(int i = 0; i < numbers.length; i++){
double[][] box = new double[lineNo][i];
box[lineNo][i] = Double.parseDouble(numbers[lineNo]);
lineNo++;
System.out.println(box[i] + " ");
}
}else{
while(numbers.length == 1 && ((nums = br.readLine()) != null)){
int p = 0;
ball[count][p] = Double.parseDouble(numbers[count]);
p++;
count++;
}
}
}
}
}
개체 배열에서이 작업을 수행해야하지만이 방법을 먼저 수행해야합니다.
부작용 : 'p'는 하드 코딩 된 '0'으로 바꿀 수 있습니다. 예,'p'는 때때로'1'로 증가하지만, 그 값은 범위를 벗어나기 전에 읽히지 않습니다. –
또한 입력 파일에 실제로'>'문자가 포함되어 있습니까, 아니면 블록 따옴표 형식을 사용하려고 했습니까? –