public void mapRead(int fileNumber) throws IOException
	{
		String nextLineData[];
		int hashValue;
		int lineNumber = 1;
		WordData next;
	   
		try 
	    {
			Scanner scan = new Scanner(Index.fileArray[fileNumber]);

			//Read all words in document
			while(scan.hasNext())
	    	{
				//Get next line of data split by space
				nextLineData = scan.nextLine().split(" ");
				
				//for each word in that line 
				for(String word: nextLineData)
				{
					//Get rid of all non-letters 
					word.replaceAll("[^A-Za-z0-9 ]", "" ).toLowerCase();
					
					//Create Hash value
					hashValue = word.hashCode() % Index.requestedReducerThreads;
					
					//Sometime hashCode returns negative numbers
					//This produces equivilant positive value
					if(hashValue < 0){
						hashValue += Index.requestedReducerThreads;
					}
		
					//Add it to correct BBMonitor
					next = new WordData(word, lineNumber, fileName);
					Index.buffers[hashValue].append(next);
				}
				//Whole Line Read
		    	lineNumber++;
		    	
	    	}
			//Takes care of decrementing counter
			done();
		} 
	    catch (FileNotFoundException e) 
		{
			System.out.println("File #" + fileNumber + " Read Error");
			//e.printStackTrace();
		}  
		//Method for reading text and adding to bounded buffer
	}