Я работаю в небольшом офисе, у меня есть приложение, оно генерирует большой текстовый файл с 14000 строк;
после каждого генерирования я должен фильтровать его, и это действительно скучно;
Я хочу написать приложение с помощью Java, пока не смогу обработать его как можно скорее.
Пожалуйста, помогите мне;Я написал приложение со сканером (конечно, с помощью :)), но это не хорошо, потому что это было очень медленно;
Например, это мой файл:
SET CELL:NAME=CELL:0,CELLID=3;
SET LSCID:NAME=LSC:0,NETITYPE=MDCS,T32=5,EACT=FILTER-NOFILTER-MINR-FILTER-NOFILTER,ENSUP=GV2&NCR,MINCELL=6,MSV=PFR,OVLHR=9500,OTHR=80,BVLH=TRUE,CELLID=3,BTLH=TRUE,MSLH=TRUE,EIHO=DISABLED,ENCHO=ENABLED,NARD=NAP_STLP,AMH=ENABLED(3)-ENABLED(6)-ENABLED(9)
, и я хочу этот вывод(фильтр:)
CELLID : 3
ENSUP : GV2&NCR
ENCHO : ENABLED
MSLH : TRUE
------------------------
Count of CELLID : 2
какое решение лучше и быстрее, чем другое?
это мой исходный код:
public static void main(String[] args) throws FileNotFoundException {
Scanner scanner = new Scanner(new File("i:\\1\\2.txt"));
scanner.useDelimiter(";|,");
Pattern words = Pattern.compile("(CELLID=|ENSUP=|ENCHO=)");
while (scanner.hasNextLine()) {
String key = scanner.findInLine(words);
while (key != null) {
String value = scanner.next();
if (key.equals("CELLID="))
System.out.print("CELLID:" + value+"\n");
//continue with else ifs for other keys
else if (key.equals("ENSUP="))
System.out.print("ENSUP:" + value+"\n");
else if (key.equals("ENCHO="))
System.out.print("ENCHO:" + value+"\n");
key = scanner.findInLine(words);
}
scanner.nextLine();
}
}
Большое спасибо, действительно ...