possible duplicate:
how print 2d array .txt file in java
8.00 28.00
18.00 28.00 8.00 23.00
12.00 20.00 15.00 30.00 12.00 32.00 12.00 20.00 18.00 31.00 29.00 25.00 6.00 28.00
7.00 28.00
6.00 24.00 14.00 30.00 11.00 23.00 12.00 20.00 31.00 24.00 11.00 20.00 17.00 23.00 14.00 32.00 15.00 23.00 8.00 20.00
17.00 31.00 7.00 20.00 12.00 23.00 15.00 20.00 12.00 20.00 21.00 20.00 27.00 27.00 18.00 20.00 25.00 27.00 46.00 13.00 26.00 10.00 47.00 22.00 44.00 14.00 34.00 4.00 34.00 4.00
44.00 7.00
39.00 5.00
20.00 0.00
43.00 11.00 43.00 25.00 34.00 2.00
25.00 10.00 50.00 9.00
25.00 9.00
39.00 2.00
34.00 7.00
44.00 15.00 36.00 3.00
40.00 5.00
49.00 21.00 42.00 7.00
35.00 1.00
30.00 2.00
31.00 13.00 53.00 12.00 40.00 4.00
26.00 4.00
50.00 55.00 57.00 51.00 62.00 52.00 56.00 52.00 59.00 40.00 61.00 68.00 66.00 49.00 57.00 49.00 62.00 58.00 47.00 58.00 53.00 40.00 60.00 54.00 55.00 48.00 56.00 65.00 67.00 56.00 55.00 43.00 52.00 49.00 67.00 62.00 68.00 61.00 65.00 58.00 46.00 53.00 46.00 49.00 47.00 40.00 64.00 22.00 64.00 54.00 63.00 64.00 63.00 56.00 64.00 44.00 63.00 40.00
import java.io.bufferedreader; import java.io.file; import java.io.filereader; import java.io.ioexception; import java.util.stringtokenizer; public class csvimport5 { public static void main(string[] args) throws ioexception { double [][] data = new double [87][2]; file file = new file("buydata.txt"); int row = 87; int col = 2; bufferedreader bufrdr = new bufferedreader(new filereader(file)); string line ; //read each line of text file while((line = bufrdr.readline()) != null && row < data.length) { stringtokenizer st = new stringtokenizer(line," "); while (st.hasmoretokens()) { //get next token , store in array data[col][row] = double.parsedouble(st.nexttoken()); col++; } col=0; } row++; for( row = 0; row<data.length; row++){ for( col = 0; col<data.length; col++){ system.out.print(" "+data[86][1]); } system.out.println(); } } }
it gives output 0.0 0.0 0.0 0.0 please me print file in array form
you print system.out.print(" "+data[86][1]);
, initialize row 87 before reading.
you double [][] data = new double [87][2];
seems [row][col] set values using [col][row]. fix order consistent please. don't arrayindexoutofboundsexception
s on line: data[col][row] = double.parsedouble(st.nexttoken());
? (edit: saw other question, indeed aioobe ;) )
this while loop never run: while((line = bufrdr.readline()) != null && row < data.length)
. initialize row 87 equal data.length , statement row < data.length
false.
edit: i'm stopping here now. i'd suggest throw program @ debugger , see code does.
Comments
Post a Comment