【问题标题】:Reading contents of the file in java and check on parameters在java中读取文件内容并检查参数
【发布时间】:2012-01-08 01:05:51
【问题描述】:

我熟悉使用 Buffered Reader 和 Scanner 在 java 中读取文件的内容,这里我试图读取文件的内容,然后检查文件中的变量是否没有空值。

像文件 read.txt 一样考虑参数

name=jen,add=avenue,age=25,email=@20212.com. 

如果参数是 name、add、age、email 为 null 或没有值,它应该显示错误消息。我可以轻松读取文件的内容,但我坚持检查文件参数是否没有值如何在 java 中进行。任何对我来说都很棒的想法。

【问题讨论】:

  • 你能把代码 sn -p 放在你卡住的地方吗?

标签: java bufferedreader filereader


【解决方案1】:

如果文件确实具有您上面描述的形式 (name=jen,add=avenue,age=25,email=@20212.com),则拆分您首先在, 读取的字符串,然后在= 并检查哪些属性具有哪个值(如果值长度为 0 或字符串为"Null",您知道没有指定任何内容,您可以显示错误)。

看看这个未经测试的例子:

String[] attrs = fileString.split(",");
for (String attr : attrs) {
   String[] elements = attr.split("="); 
   String attrName = elements[0];
   String value = elements[1];
   if (value.length == 0 || value.equals("Null") {
      displayError();
   }
}

您必须注意,您的任何属性/值都不包含,=,在这种情况下,这种方法会失败。但是话又说回来,您的许多属性都不应包含这些字符,如果包含这些字符,您可以将分隔符更改为 \\\ 之类的东西,这更不可能;)。

【讨论】:

  • 我试图通过一个 java 属性文件来做这件事。
  • Properties properties = new Properties(); BufferedInputStream stream = new BufferedInputStream(new FileInputStream("example.properties")); properties.load(stream); stream.close(); String value = properties.getProperty("name");,直接来自维基百科。现在只需对value 字符串进行上述检查。看看Wikipedia on properties,如果它解决了您的问题,请接受答案。干杯!
【解决方案2】:

您应该浏览您的文件,并将每一行转换为一个字符串。之后,您应该只检查字符串是否包含单词 Null。看起来很简单,但我现在无法测试代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多