Как отделить CSV-файл с помощью запятых, если он имеет нулевые значения и нам нужны данные, соответствующие верхнему столбцу? - PullRequest
1 голос
/ 26 августа 2011

Мой код

        BufferedReader fileReader = new BufferedReader(new FileReader(strFileName));

        while ((strLine = fileReader.readLine()) != null) {
            // [2011.06.28] based on OAP's mail, now ignore "quotations"
            strLine = strLine.replace("\"", "");
            int j = 0;
            String componentID = null;
            String analyteResult = null;
            lineNumber++;
            //break comma separated line using ","
            st = new StringTokenizer(strLine, ",");
            while (st.hasMoreTokens()) {                   
                //st.nextToken();
                String value=st.nextToken();
                if(tokenNumber==1)
                {
                    if(lineNumber==1){
                        batchNo=value;
                    }
                    else if(lineNumber==2){
                        instrumentNo=value;
                    }
                }
                else if(lineNumber==4)
                {
                    if(value.contains("_")){
                        String temp[] = value.split("_");
                        analyteCode = temp[0].trim();
                        a[j] = tokenNumber;
                        j++;
                    }
                }
                else if(lineNumber>4)
                {
                    if(tokenNumber==0){
                        componentID=value;
                    }

                }
                tokenNumber++;
                //System.out.println("Line Number : "+lineNumber+" Token Number: "+tokenNumber+"Value: "+st.nextToken());
            }
            //reset token number
            tokenNumber = 0;

        }

Но мне нужен результат аналита, соответствующий предыдущим столбцам аналитических кодов .... так как он также может быть нулевым ... так что он пропадает все запятые и не анализирует результат, соответствующий предыдущему столбцу аналитического кода.

1 Ответ

3 голосов
/ 26 августа 2011

Mudit, я не уверен, если у вас есть обязательство не использовать какие-либо библиотеки с открытым исходным кодом, поэтому я настоятельно рекомендую следующие широко используемые парсеры с открытым исходным кодом CSV.Это сэкономит вам много усилий с точки зрения кодирования и производительности.Просьба проверить их для ваших конкретных потребностей.

  1. Анализатор Apache Commons CSV .
  2. Анализатор OpenCSV
...