Giả sử tôi có một tập tin gọi là "input.txt"
mà có một loạt các số nguyên dương trong đó:
Java: Đọc mảng các số nguyên từ tập tin
6
5
6
8
6
2
4
và vân vân .... (một số nguyên trên mỗi dòng)
Tôi muốn đọc tệp này và biến nó thành một mảng. Số nguyên đầu tiên (trong trường hợp này là 6) cho biết số lượng chỉ mục hoặc phần tử trong mảng, do đó, 6 điểm. Các số khác điền vào mảng bắt đầu từ 0. Vì vậy, tại chỉ số 0, số là 5, tại chỉ số 1 số là 6, và cứ thế.
Ai đó có thể xin vui lòng chỉ cho tôi làm thế nào để đọc tập tin này và làm cho nó thành một mảng gọi là A và trả lại số nguyên trong mỗi chỉ số như n?
đây là những gì tôi có cho đến nay:
import java.io.*;
public class inputFile {
public static jobScheduleRecursive(int[] A, int i)
{
try
{
FileReader filereader = new FileReader("input.txt");
BufferedReader bufferedreader = new BufferedReader(filereader);
String line = bufferedreader.readLine();
//While we have read in a valid line
while (line != null) {
//Try to parse integer from the String line
try {
System.out.println(Integer.parseInt(line));
} catch (NumberFormatException nfe) {
System.err.println("Failed to parse integer from line:" + line);
System.err.println(nfe.getMessage());
System.exit(1);
}
line = bufferedreader.readLine();
}
}
catch(FileNotFoundException filenotfoundexception)
{
System.out.println("File not found.");
}
catch(IOException ioexception)
{
System.out.println("File input error occured!");
ioexception.printStackTrace();
}
return A;
}
Tôi nghĩ rằng tôi đang làm một cái gì đó hoàn toàn sai. Hãy giúp tôi. mẫu
Scanner s = new Scanner(new File("input.txt"));
int[] array = new int[s.nextInt()];
for (int i = 0; i < array.length; i++)
array[i] = s.nextInt();
Âm thanh như ... bài tập về nhà? –
Bạn không cần phải đặt số lượng mục nhập trên dòng đầu tiên nếu bạn sử dụng cấu trúc Danh sách để lưu trữ các số. Bạn có thể dễ dàng chuyển đổi danh sách thành một mảng (có độ dài cố định) khi bạn đọc xong bằng cách gọi list.toArray() –