繁体   English   中英

如何将文本文件的不同部分存储到不同的变量中?

[英]How to store different parts of a text file into different variables?

我正在尝试读取具有以下格式的文本文件的一部分

John Smith
72
160

第一行是名称(字符串),第二行和第三行是高度和重量(均为整数)。 但是,我找不到将它们存储到自己的变量中的方法,相反,我只能弄清楚如何将整个内容存储到一个变量中并打印出来。 这是我到目前为止的代码

        try
    {
        File file = new File("person.txt");
        FileReader fileReader = new FileReader(file);
        BufferedReader bufferedReader = new BufferedReader(fileReader);
        StringBuffer stringBuffer = new StringBuffer();
        String line;
            while ((line = bufferedReader.readLine()) != null)
            {
               stringBuffer.append(line);
               stringBuffer.append("\n");
            }
        fileReader.close();
        System.out.println(stringBuffer);
    }

在这部分

stringBuffer.append(line);
stringBuffer.append("\n");

我正在考虑尝试在存储变量的这两行中间添加一个部分,但这似乎是不可能的。 我还考虑过使用for循环,并以某种方式利用它来发挥自己的优势,但也没有办法解决该问题。

有什么可能的方法我不知道吗? 谢谢

在每个新版本中,使用Java读取和解析文本文件都变得越来越容易。 您可以尝试以下方式:

List<String> lines = Files.lines(Paths.get("person.txt")).collect(Collectors.toList());
String name = lines.get(0);
Integer height = Integer.parseInt(lines.get(1));
Integer weight = Integer.parseInt(lines.get(2));
    File file = new File("person.txt");
    FileReader fileReader = new FileReader(file);
    BufferedReader bufferedReader = new BufferedReader(fileReader);

    String firstline = bufferedReader.readLine();
    String secondline = bufferedReader.readLine();
    String thirdline = bufferedReader.readLine();

    fileReader.close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM