public ArrayList<PstPosting> ReadPstPostingFromFile() throws Exception{
		if(Stopwords.getInstance().containKey(this.term))
			return null;
		
		ArrayList<PstPosting> pstPostings = new ArrayList<PstPosting>();
		String path = "";
		
		// Get the right path
		// Based on field: body OR title
		if(this.isBody)
			path = ENV.BODYDIR + File.separator + this.term + ".inv";
		else
			path = ENV.TITLEDIR + File.separator + this.term + ".title.inv";
		
		// Try opening the inverted list file
		// Return null if the term does not exist
		BufferedReader br = null;
		try{
			br = new BufferedReader(new FileReader(path));	
		}catch(Exception e){
			if(br != null)
				br.close();
			return null;
		}
		String line = "";
		br.readLine();
		// Read file to memory
		while((line = br.readLine()) != null){
			String[] args = line.split(" ");
			int docID = Integer.parseInt(args[0]);
			int freq = Integer.parseInt(args[1]);
			PstPosting pstP = new PstPosting(docID, freq);
			for(int i = 3; i < args.length; i++){
				pstP.positions.add(Integer.parseInt(args[i]));
			}
			pstPostings.add(pstP);
		}
		br.close();
		
		return pstPostings;
	}