首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用特定行的BufferedReader从Textfile中分配值?

如何使用特定行的BufferedReader从Textfile中分配值?
EN

Stack Overflow用户
提问于 2018-05-13 16:30:32
回答 1查看 63关注 0票数 0
代码语言:javascript
复制
package inputOutput;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;

public class Test_leser {

public static void main(String[] args) throws IOException {

    // asking which file to open (no abändre das es dynamisch übere Browser funktioniert)
    Scanner scan = new Scanner(System.in);

    System.out.println("Enter Filename ");
    BufferedReader bReader = null;

    // Open demanded file
    try {
        bReader = new BufferedReader(
                new FileReader("C:\\Users\\valat\\OneDrive\\Desktop\\image-data\\" + scan.next()));

    } catch (FileNotFoundException fnfex) {
        System.out.println(fnfex.getMessage());
        // Programm geht nicht weiter, falls file not found
        System.exit(0);
    }

    String line;
    String resolution = null;
    String image = null;
    String description = null;
    int i   = 0;

    // assigning values to variables
    while ((line = bReader.readLine()) != null) {

        // zähler
        i += 1;

        if (line.startsWith("description:")) {
                description = line;
        }

        else if (line.startsWith("image-file")) {

            image = line;
        }

        else if (line.startsWith("resolution:")) {
            resolution = line;

        } else {
            System.out.println("something is REALLY wrong");
        }

        System.out.println(description);
        System.out.println(image);
        System.out.println(resolution);
    }

}

}

嘿。我在这里遇到麻烦了。我从文本文件中用BufferedReader阅读这篇文章:

代码语言:javascript
复制
description: Blutausstrich (Mensch)
image-file: image01.jpg
resolution: 0.002 mm

在此之后,我的下一个意图是迭代每一行,并将每一行单独分配给一个变量。问题是,每当我尝试它时,我的输出如下:

代码语言:javascript
复制
description: Blutausstrich (Mensch)
null
null
description: Blutausstrich (Mensch)
image-file: image01.jpg
null
description: Blutausstrich (Mensch)
image-file: image01.jpg
resolution: 0.002 mm

你可能看到了,这不是我想要的。如何才能指定特定的行,用我的变量填充the文件中的if-条件呢?我真的很感激你的帮助,我试着和这个游戏玩了几个小时,我查了很多不同的东西,我很确定这是一个非常明显的答案,它会让我想“哦,该死的,真的吗?我是个白痴”。

提前谢谢你们!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-13 17:13:20

将stdout从while循环中移出:

代码语言:javascript
复制
        System.out.println(description);
        System.out.println(image);
        System.out.println(resolution);

问题是,在分配所有变量之前,我们正在打印。

干杯!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50318259

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档