public void start() throws IOException {
		File[] fileList = new File(statusesDir).listFiles();
		PrintWriter errorLogWriter = new PrintWriter(new File(
				"./logs/ActiveUserExtractor-error-log.txt"));
		PrintWriter logWriter = new PrintWriter(
				"./logs/ActiveUserExtractor-log.txt");
		BufferedWriter writer = new BufferedWriter(new FileWriter(outFile));
		for (File file : fileList) {
			System.out.println(file.getName() + " -> started");
			logWriter.println(file.getName() + " -> started");
			logWriter.flush();

			FileInputStream fis = new FileInputStream(file);
			DataInputStream dis = new DataInputStream(fis);
			int size = dis.read(buffArr);
			if (dis.available() > 0) {
				System.err.println(file.getName() + " not red completely!!");
				errorLogWriter
						.println(file.getName() + " not red completely!!");
				errorLogWriter.flush();
			}
			ObjectInputStream ois = new ObjectInputStream(
					new ByteArrayInputStream(buffArr, 0, size));
			int statusesCnt = 0, newUsers = 0;
			while (true) {
				try {
					User user = ((Status) ois.readObject()).getUser();
					statusesCnt++;
					if (!set.contains(user.getId())) {
						set.add(user.getId());
						writer.write(user.getId() + "\n");
						newUsers++;
					}
				} catch (Exception e) {
					if (!e.toString().equals("java.io.EOFException")) {
						e.printStackTrace();
						errorLogWriter.println(file.getName()
								+ " throws Exception: " + e.toString());
						errorLogWriter.flush();
					}
					break;
				}
			}
			System.out.println(file.getName()
					+ "->  finished,\tNum of tweets: " + statusesCnt
					+ ", Num of new Users: " + newUsers
					+ ", total num of users: " + set.size() + "\n");
			logWriter.println(file.getName() + "->  finished,\tNum of tweets: "
					+ statusesCnt + ", Num of new Users: " + newUsers
					+ ", total num of users: " + set.size() + "\n");
			logWriter.flush();
			fis.close();
			dis.close();
		}

		System.out
				.println("\n\n*****\tFINISHED! .. Total Num of Active Users: "
						+ set.size());
		logWriter
				.println("\n\n*****\tFINISHED! .. Total Num of Active Users: "
						+ set.size() + "\n");
		logWriter.flush();

		writer.close();
		errorLogWriter.close();
		logWriter.close();
	}