Below is my method im working with, under it is an explanation and question, please help, what am I doing wrong here? Thanks Code: public void searchStudent() throws Exception { Scanner scanner; //Set Scanner scanner = new Scanner(System.in); Student[][] allstudentObjArray = new Student[10][12]; Scanner allStu = new Scanner(new File("allstudents2.txt")); int i=0; // boolean found = false; //This is where your problem lays your reading it into the wrong thing soilder. Scanner sa1 = new Scanner(allStu.nextLine()); while(allStu.hasNextLine()) { for (int i3 = 0; i3 < allstudentObjArray.length; i3++) { //Delimit this line with scanner sa1.useDelimiter(":"); for(int i2 = 0;i2 < allstudentObjArray.length;i2++) { //Try sa1 for stuAll below?? //Try Student for stuAll below?? //Try get rid of the "new". why create new object allstudentObjArray[i3][i2] = new stuAll(sa1.next()); i2++; } i3++; } } System.out.println(allstudentObjArray[0][0]); System.out.println(allstudentObjArray[1][0]); System.out.println(allstudentObjArray[2][0]); System.out.println(allstudentObjArray[3][0]); } Pretty much what Im trying to do here is, go through each line of the text file with values delimited by : there are 11 lines, with 13 values in each line all seperated by a ":" I want to put these into this 2D array and then take them out for use as needed by my program. Im trying to use two for loops, one for the line to go and then one for the values. I seem to be doing something wrong, it seems to be happening around the stage when I try to put the delimited value in one by one. Am I going about this the right way, or should I be heading down a different path? Or is there something small I'm just not doing right, say around this line "allstudentObjArray[i3][i2] = new stuAll(sa1.next());"