Обратите внимание, что
HashMap<String,Integer> map = null;
- это не то же самое, что пустая карта.Прежде всего, вы должны создать новую карту, прежде чем использовать ее.
Если в этом случае использовать, например,
HashMap<String,Integer> map = null;
А затем вы создаете в цикле новую карту, которую трудно прочитать для ваших целей.Я бы предложил просто создать экземпляр вашей карты вместе с набором и удалить
map = new HashMap<String,Integer>();
внутри цикла while
Ваш код должен выглядеть как
HashMap<String, Integer> map = new HashMap<String, Integer>();
TreeSet<String> set = new TreeSet<String>();
set.add("");
while ((data = br.readLine()) != null) {