如何从文本文件中读取整数值

时间:2012-05-25 10:09:19

标签: java

  

可能重复:
  Java: Reading integers from a file into an array

我想从文本文件中读取整数值,说contactids.txt。在文件中我有像

这样的值
12345
3456778
234234234
34234324234

我想从文本文件中阅读它们...请帮助

6 个答案:

答案 0 :(得分:17)

你可能想要做这样的事情(如果你使用的是java 5及更多)

Scanner scanner = new Scanner(new File("tall.txt"));
int [] tall = new int [100];
int i = 0;
while(scanner.hasNextInt())
{
     tall[i++] = scanner.nextInt();
}

通过Julian Grenier

中的Reading Integers From A File In An Array

答案 1 :(得分:3)

您可以使用Scanner及其nextInt()方法。 如果需要,扫描仪还有nextLong()个更大的整数。

答案 2 :(得分:3)

试试这个: -

File file = new File("contactids.txt");
Scanner scanner = new Scanner(file);
while(scanner.hasNextLong())
{
  // Read values here like long input = scanner.nextLong();
}

答案 3 :(得分:1)

价值有多大? Java 6具有Scanner类,可以读取从int(32位),long(64位)到BigInteger(任意大整数)的任何内容。

对于Java 5或4,Scanner就在那里,但不支持BigInteger。您必须逐行读取(使用Scanner类的readLine)并从String中创建BigInteger对象。

答案 4 :(得分:1)

使用 FileInputStream readLine()方法,使用 Integer.parseInt()方法读取并解析返回的String到int。 / p>

答案 5 :(得分:0)

我会使用几乎相同的方式,但使用list作为读取整数的缓冲区:

static Object[] readFile(String fileName) {
    Scanner scanner = new Scanner(new File(fileName));
    List<Integer> tall = new ArrayList<Integer>();
    while (scanner.hasNextInt()) {
        tall.add(scanner.nextInt());
    }

    return tall.toArray();
}