我正在尝试从属性文件中读取并在文本字段中显示输出,但它只是给了我一个空白页面。我知道代码不是最好的,但我不知道另一种方式。
Double income = Double.parseDouble(totalField.getText());
Properties prop = new Properties();
InputStream input = null;
try {
input = new FileInputStream("intput.properties");
prop.load(input);
if (income <= 11000) {
taxMessage.setText(String.valueOf(Double.parseDouble(prop.getProperty("tax"))));
montaxMessage.setText("mon tax:" + String.valueOf(Double.parseDouble(prop.getProperty("tax")) / 12));
}
} catch(IOException ex) {
ex.printStackTrace();
} finally {
if (input != null) {
try {
input.close();
} catch(IOException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:0)
您的代码看起来很好。 也许您的文件是空的?
如果该代码正在打印您的文件,您可以尝试吗?
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class App {
public static void main(String[] args) {
Properties prop = new Properties();
InputStream input = null;
try {
input = new FileInputStream("input.properties");
prop.load(input);
// get the property value and print it out
System.out.println(prop.getProperty("tax"));
} catch (IOException ex) {
ex.printStackTrace();
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
空? 您可以在下面的代码中添加数据:
output = new FileOutputStream("config.properties");
// set the properties value
prop.setProperty("database", "localhost");
prop.setProperty("dbuser", "mkyong");
prop.setProperty("dbpassword", "password");
// save properties to project root folder
prop.store(output, null);
此外,我认为您可以跳过一步并使用:
taxMessage.setText(prop.getProperty("tax"));