繁体   English   中英

Java从txt文件读取数字

[英]Java Read numbers from txt file

假设我们有一个像这样的文本文件:

#this is a config file for John's server


MAX_CLIENT=100

  # changed by Mary


TCP_PORT = 9000

而且我编写了以下代码:

 this.reader = new BufferedReader(new FileReader(filename));
    String line;

    line = reader.readLine();
    while (line.length() != 0) {

        line = line.trim();
        if (line.contains("#") || line.contains("")) {
            line = reader.readLine();

        } else {
            if (line.contains("MAX_CLIENT=")) {
                line = line.replace("MAX_CLIENT=", "");
                this.clientmax = Integer.parseInt(line);
            }

            if (line.contains("TCP_PORT=")) {

                line = line.replace("TCP_Port=", "");
                tcp_port = Integer.parseInt(line);
            }

        }
    }

其中clientmax和tcp_port的类型为int。

clientmax和tcp_port会收到此代码的值吗?

如果文本文件稍微更改为:

MAX_CLIENT=100# changed by Mary

在数字后包含注释。

ow,btw#表示注释的开始。

谢谢。

使用line.startsWith("#")代替line.contains("#")

执行此操作时,请记住,到达注释字符时需要停止阅读。

您应该使用为此目的设计的类: 属性

此类为您处理注释,因此您不必担心它们。

您可以这样使用它:

Properties prop = new Properties();
prop.load(new FileInputStream(filename));

然后,您可以使用以下命令从中提取属性:

tcpPort = Integer.parseInt(prop.getProperty("tcpPort"));

或使用以下方法保存:

prop.setProperty("tcpPort", String.valueOf(tcpPort));

暂无
暂无

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

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