[Help] How to read each column of data into a separate one dimensional array
The list below has a list of stuff for my program that I need to read in. How do you read in the data column by column rather than row by row? I have to have 4 separate arrays to read in the years (ignore the months), pressures, wind speeds, and names. Idk how to do that though.
Code :
1980 Aug 945 100 Allen
1983 Aug 962 100 Alicia
1984 Sep 949 100 Diana
1985 Jul 1002 65 Bob
1985 Aug 987 80 Danny
1985 Sep 959 100 Elena
1985 Sep 942 90 Gloria
1985 Oct 971 75 Juan
1985 Nov 967 85 Kate
1986 Jun 990 75 Bonnie
1986 Aug 990 65 Charley
1987 Oct 993 65 Floyd
1988 Sep 984 70 Florence
1989 Aug 986 70 Chantal
1989 Sep 934 120 Hugo
1989 Oct 983 75 Jerry
1991 Aug 962 90 Bob
1992 Aug 922 145 Andrew
1993 Aug 960 100 Emily
1995 Aug 973 85 Erin
1995 Oct 942 100 Opal
1996 Jul 974 90 Bertha
1996 Sep 954 100 Fran
1997 Jul 984 70 Danny
1998 Aug 964 95 Bonnie
1998 Sep 987 70 Earl
1998 Sep 964 90 Georges
1999 Aug 951 100 Bret
1999 Sep 956 90 Floyd
1999 Oct 987 70 Irene
2002 Oct 963 80 Lili
2003 Jul 979 80 Claudette
2003 Sep 957 90 Isabel
2004 Aug 972 70 Alex
2004 Aug 941 130 Charley
2004 Aug 985 65 Gaston
2004 Sep 960 90 Frances
2004 Sep 946 105 Ivan
2004 Sep 950 105 Jeanne
2005 Jul 992 65 Cindy
2005 Jul 930 130 Dennis
2005 Jul 929 135 Emily
2005 Aug 975 85 Irene
2005 Aug 902 150 Katrina
2005 Sep 960 100 Maria
2005 Sep 979 80 Nate
2005 Sep 976 80 Ophelia
2005 Sep 985 70 Phillipe
2005 Sep 897 150 Rita
2005 Sep 979 70 Stan
2005 Sep 987 65 Vince
2005 Sep 882 150 Wilma
2005 Sep 960 100 Beta
2005 Sep 979 75 Epsilon
2006 Aug 995 65 Ernesto
2006 Sep 972 80 Florence
2006 Sep 955 105 Gordon
2006 Sep 954 110 Helene
2006 Sep 985 75 Isaac
Re: [Help] How to read each column of data into a separate one dimensional array
The most straight forward thing to do is to read the file from top to bottom. Most likely you will use a BufferedReader. (There's an example of usage at java2s.com)
Quote:
I have to have 4 separate arrays to read in the years (ignore the months), pressures, wind speeds, and names.
Consider a small child confronted with a huge jumbled heap of building blocks and charged with the task organising them by colour into tidy piles. Now they might go through the large heap finding all the red ones, then start again and find all the green ones and continue in that way until all the tidy piles had been constructed. But an infinitely more efficient approach would be to take the blocks one by one from the large heap - in the order they are most easily found - and place them into the appropriate tidy pile.
Perhaps you could take the same approach. Read the file line by line, extract the elements you are interested in from the line, and place each into the appropriate array. (Of course you would have constructed all four arrays first.)
---
I guess it's a homework problem. But it's one that reflects badly on the teacher. (Feel free to link him or her to this page.)
The thing is that the various elements of each line belong together. "Aug? Which Aug?!" - "Aug, 1980" etc. It is together that the various elements will be sorted, or searched for etc. There is a logical intuition that cries out against putting the data into separate arrays. The teacher's business is to foster that intuition.
Re: [Help] How to read each column of data into a separate one dimensional array
Quote:
stuff for my program that I need to read in. How do you read in the data column by column rather than row by row?
There is no way to read a text file other than row by row.
If you read a line from the file you will get a row/line that contains all the columns.
Parse the row into separate tokens for each column and then save each column's token in its own array.
The String class's split() method is useful for separating a line into tokens.