public int getRowCount(String path, Map<String, String> filterMap) {
		try {
			Class.forName("com.hxtt.sql.dbf.DBFDriver");		
			String connString = String.format("%s%s", "jdbc:dbf:/", path.substring(0,path.lastIndexOf("\\")));
			String encoding = "cp866";			
			java.util.Properties prop = new java.util.Properties();
			prop.put("charSet", encoding);
		    if(encoding == "cp866"){
		        	prop.put("CODEPAGEID", "66");
		    }
		    if(encoding == "cp1251"){
		        	prop.put("CODEPAGEID", "C9");
		    }
	        Connection connection=DriverManager.getConnection(connString, prop); 
			String conditions = this.makeConditionsString(filterMap, null);				
			String query = String.format("select count(*) from  %s", path.substring(path.lastIndexOf("\\") + 1,path.length() - 4));
			if(!"".equals(conditions)){
				query += " where " + conditions;
			}
			Statement stmt=connection.createStatement();
			ResultSet resultSet=stmt.executeQuery(query);  
			resultSet.next();
			return resultSet.getInt(1);
		} catch (ClassNotFoundException e) {
			return 0;
		} catch (SQLException e){
			return 0;
		}
	}