0

So I have a string which is from a text file, essentially the text file is just 5 lines which read:

x=1
y=15
z=128
topx=100
leftx=150
label= this is a test

I am able to get the split to work once which separates via the '=' sign, but when I try to split the string again by \n nothing works, I have tried using "\r?\n", line.Separator etc. but the string value always stays the same, basically the 5 lines without the characters before the = sign. How would I pull out the individual lines to assign variables to?

Here is the code I have, basically the println is to try and see if I can get the first value '1' to list separate from the rest of the lines.

    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           }
Sotirios Delimanolis
  • 274,122
  • 60
  • 696
  • 724

2 Answers2

0

When every line looks like

x=1 y=15 z=128 topx=100 leftx=150 label= this is a test

you should first split at a whitespace to get 5 parts (x=1, y=15, ...) and then at = to get the "key" and "value" part of each part.

Smutje
  • 17,733
  • 4
  • 24
  • 41
0

check this out:

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("=")) );
fubar
  • 338
  • 1
  • 6
  • 20
  • I am glad I could be of assistance. Please also mark the question as answered so that this question will be properly closed. – fubar Mar 04 '14 at 15:16