посчитать ключ и значения? - PullRequest
1 голос
/ 27 октября 2011

У меня есть 2000 строк кодов, это сгенерировано нашей БД, и результат будет таким:

CREATE UIX:NAME=JSS,RRTE:TTRE,EMAC:TRUE,CHECK:TRUE,YYEE:FALSE
GL0/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL1/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL2/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
CREATE UIX:NAME=JSS,RRTE:TTRE,EMAC:TRUE,CHECK:FALSE,YYEE:FALSE
GL0/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL0/GL1,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
CREATE UIX:NAME=JSS,RRTE:TTRE,EMAC:TRUE,CHECK:FALSE,YYEE:FALSE
GL0/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL1/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL2/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL3/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
CREATE UIX:NAME=JSS,RRTE:TTRE,EMAC:TRUE,CHECK:TRUE,YYEE:FALSE
GL0/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL1/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL2/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL3/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE
GL4/GL0,RRTE:TTRE,EMAC:TRUE,UWQ:FALSE,ULT:TRUE

Я хочу, чтобы, если "CHECK" был ложным, это будет подсчитывать GL для меня, также янапишите метод чтения файла:

public void execToken(File f) throws Exception {
        BufferedReader br = new BufferedReader(new FileReader(f));
        String line;
        while ((line = br.readLine()) != null) {
            StringTokenizer strt = new StringTokenizer(line, ";");
            while (strt.hasMoreTokens()) {
                String token = strt.nextToken();
                itemConfig(token, "CREATE UIX:NAME=JSS", poolVector);
            }
        }
    }

и это мой метод itemConfig:

public void itemConfig(String token, String condition, Vector<String> vHead) {
        if (token.startsWith(condition)) {
            value = getTokenValue(token);
            String[] content = value.split("[,=]");
            Collections.addAll(vHead, content);
        }
    }

любая идея?

Большое спасибо ...

1 Ответ

0 голосов
/ 27 октября 2011
   public void execToken(File f) throws Exception {
        BufferedReader br = new BufferedReader(new FileReader(f));
        String line;
        while ((line = br.readLine()) != null) {

            if(line.indexOf("CHECK:FALSE") > -1) {
               //Do something
            } else if(line.indexOf("CHECK:TRUE") > -1) {

                int i = 0;                   
                while(!(line = br.readLine).startsWith("CREATE"))  {
                    i++;
                }

                //  You have amount of GL's
            }

            StringTokenizer strt = new StringTokenizer(line, ";");
            while (strt.hasMoreTokens()) {
                String token = strt.nextToken();
                itemConfig(token, "CREATE UIX:NAME=JSS", poolVector);
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...