DaniWeb IT Discussion Community

DaniWeb IT Discussion Community (http://www.daniweb.com/forums/index.php)
-   Java (http://www.daniweb.com/forums/forum9.html)
-   -   Parsing Text file (http://www.daniweb.com/forums/thread36186.html)

NSCelica Dec 1st, 2005 2:16 pm
Parsing Text file
 
Alright, This is really bothering me that I can't figure this out since I took 3 terms of Java.

Alright, I have a text file that contains addresses.

ex:
Name
1234 5th St
Orlando, Fl 19191

Name2
1423 4th ave
New York, NY 09987

and so on and so on.

Originally I was trying to have it take each line and put it into an 2d array.

addyArray[addyIndex][lineOfAddy].

I could not figure out how to make a linebreak (gap) be the delimiter to separate the values.

Most of the addresses will be 3lines, but I wanted the expandability of being able to handle 4 line addies.

Can anyone help me with this? If you need more details either post in here or email me at nscelica@yahoo.com.

Thanks

server_crash Dec 1st, 2005 4:51 pm
Re: Parsing Text file
 
You can try the StringTokenizer which allows special delimeters. Also, I'm not sure a 2D array is the best way to go, but can't say for a fact that it's not. If you post your parsing code we could probably help more.

NSCelica Dec 1st, 2005 5:35 pm
Re: Parsing Text file
 
import cs1.Keyboard;
import java.util.*;
import java.io.*;
public class PrintAddresses
{
        public static void main (String[] args) throws IOException
        {
                String [][] addyArray = new String[50][4];
                for (int j=0; j<50; j++)
                {
                        for (int k=0; k<4; k++)
                        {
                                addyArray[j][k] = "\n";
                        }
                }
//                FileWriter outFile = new FileWriter ("results.txt");
//                PrintWriter out = new PrintWriter(outFile);
                FileReader inFile = new FileReader (args[0]);
                BufferedReader in = new BufferedReader (inFile);
                String line = "";
                int i = 0, a = 0;
                while(in.ready())
                {
                        line = in.readLine();
                        while (line != null && line != "\n")
                        {
                                addyArray[i][a] = line;
                                line = in.readLine();
                                a++;
                                if (line == null) line = "\n";
                        }
                        i++;
                        a = 0;
                }
                for(int j=0; j<3; j++)
                {
                        for(int k=0;k<4;k++)
                        {
                                System.out.println((j+1) + "-" + (k+1) + " " + addyArray[j][k]);
                        }
                }
        }
}


All times are GMT -4. The time now is 12:32 am.

Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC