Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java属性文件:空属性值的有用案例?_Java_Properties - Fatal编程技术网

Java属性文件:空属性值的有用案例?

Java属性文件:空属性值的有用案例?,java,properties,Java,Properties,我正在处理Java中的属性文件。我想知道是否有一些属性文件使用空值('propertyName=\n')以及它们的用途 [更新] 因为有些人仍然很恼火,这里有一个更好的描述: 示例属性文件可能如下所示: database.username = john database.password = johnsSecret 好吧,这很简单。现在的问题是,如果有人看到过这样的事情: anyProperty = 我只是问你是否知道一个实际发生的用例,你需要在一个属性文件中表达一个空的属性值,为什么会这样

我正在处理Java中的属性文件。我想知道是否有一些属性文件使用空值('propertyName=\n')以及它们的用途

[更新]

因为有些人仍然很恼火,这里有一个更好的描述:

示例属性文件可能如下所示:

database.username = john
database.password = johnsSecret
好吧,这很简单。现在的问题是,如果有人看到过这样的事情:

anyProperty =
我只是问你是否知道一个实际发生的用例,你需要在一个属性文件中表达一个空的属性值,为什么会这样


PS:这不是社会实验,它是为了确定这个案例是否实际需要,或者在指定增量以通过添加或删除其条目来转换现有属性文件时,我是否可以使用它来表达删除属性的愿望。或者,我将使用
-propertyname
删除任何属性。

这个问题太模糊了,我投票以“不清楚你在问什么”作为结束语,这太奇怪了,甚至似乎是一个社会实验来分析人们从随机生成的问题中得到的答案

话虽如此,这段代码保存并读取一个包含您所要求的内容的属性文件

//Write
String fileName="fileInTheWild.properties";
Properties prop= new Properties(); 
OutputStream fos = new FileOutputStream( fileName );
prop.put("propertyName", "\n");
prop.store(fos, "Some Properties"); 

//Read
prop.load(new FileReader(fileName));    
String newLine= prop.getProperty("propertyName");
System.out.println("Line 1" + newLine +"Line 2");

在这个问题上什么东西这么含糊?我不明白你们这些家伙@MartinKersten现在在编辑之后,它就不那么模糊了,所以你是在问如何区分空属性和空属性吗?您可以显式使用anyProperty=null,或者如果问题是何时实际使用空属性?然后,任何可选属性都符合该标准,即使在程序内部,您也可以将其威胁为空值或空值(根据您的选择),对于可选的中间名字段,我更喜欢空空间,而不是错误的空值。实际上,我想知道这是否在野外使用。我的意思是,中间名“”可能是错误的,因为您要么有(填充的)中间名,要么没有,并且没有一个用=null表示(或者可选的.empty映射到null内容)。因此,如果您知道一个强制您使用“”的API,我想知道。我写的是供内部使用的,但我想防止下游的维护成本,所以我试图让这一事实正确,但如果一个人遇到这种情况,他必须理解改变布拉布拉布拉。。。要花钱。它可能有助于取消设置一些默认值。这正是我试图通过完全删除它们来使用的东西。如果它有空值,它就不存在了。但是如果有我不知道的有效用例,我想提前知道它们。我不能想出任何其他用例,但要取消设置一个已经设置的值,或者不恰当地声明一些属性没有设置。谢谢。在野外不知道的东西是一个非常重要的信息:-)。通常,用另一个属性文件来掩盖属性是很少见的,甚至可以认为它是邪恶的。考虑一下路径“/foo”被取消设置,因为它被“”覆盖。应用程序需要额外的逻辑才能理解“”实际上毫无意义。这就是为什么我认为合并属性实际上应该删除键并说它不在那里。所以我问了这个(困难的)问题。