如何使用java在String数组中搜索NA值

时间:2016-11-25 14:35:34

标签: java arrays csv

我想从csv文件中搜索数组中的NA值。

打击代码是示例代码。这段代码很好用

public static void main(String[] args) throws IOException {

String[] test={"NA","NA","1","2","1","2","NA","2","1","2","NA","2"};
String deleteM= "NA";

    for(int i=0;i<test.length;i++)
    {
    String  tmp=test[i];
        if(tmp==deleteM)
            {


            test[i]=test[i+1];

            System.out.println(test[i]);
            }   
    }
    for(int i=0;i<test.length;i++){
    System.out.println(test[i]);
    }

}

但是数组(保存csv)代码不起作用。 下面的代码正在加载csv文件代码并在数组中搜索值

public static String readCSV(File csvFile) {
    BufferedReader bufferedReader = null;
    StringBuffer stringBuffer = new StringBuffer();

    try {
        bufferedReader = new BufferedReader(new FileReader(csvFile));
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

    try {
        String temp = null;
        while((temp = bufferedReader.readLine()) != null) {
            stringBuffer.append(temp+","); // temp 에 저장되어있는 한 줄을 더한다.
        }

        System.out.println(stringBuffer);
    } catch (IOException e) {
        e.printStackTrace();
    }

    // -10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,,,,,,,,,,1,2,3,4,5,6,7,8,9,10, 반환
    return stringBuffer.toString();
}


public static String[] parse(String str) {
    String[] strArr = str.split(","); // 쉼표가 1개인 것을 기준으로 나누어서 배열에 저장

    return strArr; 
}

public static void main(String[] args) {
    String str = readCSV(new File("D:/sample.csv"));
    String[] strArr = parse(str); // String 배열에 차곡차곡 담겨서 나온다.
    int varNumber = 45;
    int rowNumber = strArr.length/varNumber;
    String tmp= "NA";

                for(int i=0;i<rowNumber;i++){
                        for(int j=0;j<varNumber;j++){
                            System.out.println(strArr[i][j]==tmp);
                        }
    }
}

以下部分不起作用

System.out.println(strArr[i][j]==tmp);

0 个答案:

没有答案