我有一个文本文件,其值指定为=
FORMNAME1=Cat
CONTROL ID=6
DATA WIDTH=20
LABEL WIDTH = 30
LABEL ALIGN = R
FORMNAME2= bat
CONTROL ID=5
DATA WIDTH=20
LABEL WIDTH = 30
LABEL ALIGN = R
FORMNAME3= rat
CONTROL_ID3=10
DATAWIDTH3=20
LABELWIDTH3 = 30
LABEL_ALIGN3 = R
如何使用JAVA只读取每行中存储的值,即=之后的数据?
最佳答案
读取文件as shown here ,并使用String.split()
在每一行中获取值:
try (BufferedReader br = new BufferedReader(new FileReader(file))) {
String line;
while ((line = br.readLine()) != null) {
String value = line.split("=")[1];
System.out.println(value);
}
}
说明:读取文件,在我链接的问题中得到了很好的解释
让我们看看:您正在单独处理文件的每一行,然后文件的内容(只有一行)到达这部分代码,但是这一行在做什么?
String value = line.split("=")[1];
line
变量,在第一次迭代中将包含:
FORMNAME1=Cat
split("=") 将创建一个像这样的数组
[0] FORMNAME1
[1] Cat
因此该行将位置 1 (Cat) 的值分配给变量 value
String value = "Cat";
第二次迭代将执行相同但不同的内容:
line = "CONTROL ID=6"
所以
line.split("=")
结果
[0] CONTROL ID
[1] 6
还有
// be careful is a string representing "6"
// not the numerical value 6 as int or double!!!!!
String value = "6";
等等......
<小时/>额外提示:
- 使用
String.valueOf()
如果你想提取数值
关于java - 只读取文本文件中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35651152/