java - 从文件输入/变量 Java 中解析长文本

标签 java parsing long-integer literals numberformatexception

我正在尝试根据 .txt 文件中的数字列表进行一些大型计算。我需要使用长整型,特别是文字长整型,因此每次从文件中获取新值时,我需要在末尾包含“L”或“l”。 int litterals 一直给我留下否定的答案...我每次读取文件时都尝试添加“L”后缀,但 Long.valueOf() 会抛出 NumberFormatException。如何将解析后的 long 声明为文字 long?

import java.util.*; 
import java.io.*;
public class Test{

public static void main(String[] args) throws FileNotFoundException{
    File numFile = new File("numbers.txt");
    Scanner in = new Scanner(numFile);
    int total = 0;
    Long tmp;
    while(in.hasNextLine()){
        tmp = Long.valueOf(in.nextLine().substring(0,12));
        System.out.println(tmp);
        total += tmp;
    }
}

我很感谢这里的所有帮助,但你们都忽略了我的问题...我的问题是:如何将解析后的 long 声明为文字 long?(考虑到我从不硬连线一个值)。上面的示例是无关的,它不需要调试,它只是我想要做的事情的一个简短演示。

最佳答案

如果单个数字对于 int 来说太大,它们的总和也会太大。还可以使用 long 来表示总数。

关于java - 从文件输入/变量 Java 中解析长文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28912785/

相关文章:

c++ - 编写一个简单的方程解析器

c++ - 将字符串解析为结构变量

java - 使用 BufferedReader 从文件中读取 Long 和 String

Java:检查一个位是长的0还是1

java - 如何使用 restTemplate Spring-mvc 发送 Multipart 表单数据

java - android.R 的 Android 开发问题

mysql - datetime MySQL 解析日期

java - 比较长值时排序错误

java - 混淆 Java 时间解析 UTC

java - 为什么在 java.util.Collections 中声明静态 java.util.Collections.fill() 方法而不是在 java.util.AbstractList 中声明实例方法?