My code works perfectly in InteliJ.Someone please help
package com.codegym.task.task19.task1924;
import java.util.ArrayList;
import java.util.List;
import java.io.FileInputStream;
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import static java.lang.Integer.parseInt;
/*
Replacing numbers
*/
public class Solution {
public static Map<Integer, String> map = new HashMap<Integer, String>();
static {
map.put(0,"zero");
map.put(1,"one");
map.put(2,"two");
map.put(3,"three");
map.put(4,"four");
map.put(5,"five");
map.put(6,"six");
map.put(7,"seven");
map.put(8,"eight");
map.put(9,"nine");
map.put(10,"ten");
map.put(11,"eleven");
map.put(12,"twelve");
}
public static void main(String[] args) throws Exception
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedReader fileReader = new BufferedReader(new FileReader(reader.readLine()));
String pattern = "[0-9]|[0-9][0-9]";
while(fileReader.ready())
{
String data = fileReader.readLine();
String [] words = data.split(" ");
for (int i = 0; i < words.length; i++) {
if (words[i].matches(pattern))
if (map.containsKey(parseInt(words[i]))) {
data = data.replaceFirst(words[i], map.get(parseInt(words[i])));
}
}
System.out.println(data);
}//while ends
fileReader.close();
reader.close();
}
}