public void readByLevel()
	{
		Queue<TreeNode> queue = new LinkedList<TreeNode>();
		try
		{			
			Scanner fileScan = new Scanner(new File(filePath));
			String curNodeValue = fileScan.next();
			mRoot = new TreeNode(curNodeValue);			
			TreeNode left, right = null;

			queue.add(mRoot);
			
			while(!queue.isEmpty())
			{
				String leftStr = fileScan.next();;
				String rightStr = fileScan.next();;
				TreeNode curNode = queue.remove();
				
				if(leftStr.equals("#"))
					left = null;
				else
					left = new TreeNode(leftStr);
				
				if(rightStr.equals("#"))
					right = null;
				else
					right = new TreeNode(rightStr);
								
				if(left != null)
				{
					curNode.setLeft(left);
					queue.add(left);
				}
				if(right != null)
				{
					curNode.setRight(right);
					queue.add(right);
				}	
			}
			
			fileScan.close();
		} 
		catch (IOException e)
		{
			e.printStackTrace();
		}	
	}