所以我有一个来自文本文件的字符串,基本上文本文件只有5行,其中包含:
x=1
y=15
z=128
topx=100
leftx=150
label= this is a test
我能够通过'='符号分离一次,但是当我尝试再次通过\ n分割字符串时没有任何作用,我尝试使用“\ r?\ n”,行.Separator等但字符串值总是保持不变,基本上是5行没有=符号之前的字符。如何拉出各行以将变量分配给?
这是我的代码,基本上println试着看看我是否可以将第一个值'1'与其余行分开列出。
public static void main(String[] a) {
15 draw d = new draw();
16 Read r = new Read();
17 String m = r.doRead("variables.txt");
18
19 String[] ss = new String[5];
20 ss = m.split("\n");
21
22 String[] kv= new String[5];
23 for (int i=0; i<ss.length; i++) {
24 kv = ss[i].split("=");
25 String eol = System.getProperty("line.seperator");
26 String test = kv[1];
27 String[] split = new String[5];
28 split = test.split("\n");
29
30
31
32
33 String first = split[0];
34 //String second = split[1];
35 //String third = split[2];
36 //String fourth = split[3];
37 //String fifth = split[4];
38 System.out.println(first);
39 }
答案 0 :(得分:0)
当每一行看起来像
x=1 y=15 z=128 topx=100 leftx=150 label= this is a test
你应首先在空白处拆分以获得5个部分(x=1
,y=15
,...),然后在=
获取“关键字”和“值”部分每个部分。
答案 1 :(得分:0)
检查一下:
String s = "x=1\ny=15\nz=128\ntopx=100\nleftx=150\nlabel= this is a test";
String[] ss = s.split("\n");
System.err.println( Arrays.asList(ss[0].split("=")) );