public static Vector<String> read_page(String filename, Vector<Index> file_index) {  
        
    	int number=0;
    	Vector<String> pages = new Vector<String>();
		        try {  
		             
			            BufferedReader gzipReader = new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(filename))));
			              
			            char[] buffer;
			            String a = new String();
			            buffer = new char[file_index.elementAt(number).doc_length];
			            while ((gzipReader.read(buffer, 0, file_index.elementAt(number).doc_length)) != -1)
			            {
//			            	System.out.println("page"+number+":");
			            	a = String.valueOf(buffer);
			            	pages.add(a);
			            	number ++;
			            	if(number==file_index.size())
			            	{
//			            		System.out.println("finish");
			            		break;
			            	}			            	
			            	buffer = new char[file_index.elementAt(number).doc_length];			            	
			            }
			                
		                gzipReader.close();
		                
			        } catch (Exception ex){  
			            System.err.println(ex.toString());  
			           
			        }  
    	return pages;
    }