Ignore a line while reading a file in java

前端 未结 3 565
粉色の甜心
粉色の甜心 2021-01-27 00:42

I have some code to read the lines from a file, I would like to recognize when the line starts or the fisrt character (not blank) is \'*\' and ignore it, so inside

相关标签:
3条回答
  • 2021-01-27 01:25
    input = new BufferedReader(new FileReader(new File(finaName)));
    String line = null;
    while ((line = input.readLine()) != null) {
      if(line.trim().indexOf('*') == 0)
        continue;
      String[] words = line.split(" "); 
        .... 
    }
    
    0 讨论(0)
  • 2021-01-27 01:26

    Change your while loop as:

    while((line = input.readLine()) != null){
       if(!line.startsWith("*")){
          String[] words = line.split(" ");
          ....
       }
    }
    

    EDIT

    If "*" is not in the beginning of the line but at some position in the line, use the following

    if(line.indexOf("*") == position){
       ......
    }
    

    where position can be an integer specifying the position you are interested in.

    0 讨论(0)
  • 2021-01-27 01:29

    Assuming the * marks and end of line comment, this loop will keep anything needed on the line before it.

        input = new BufferedReader(new FileReader(new File(finaName)));
        String line = null;
        char[] lineChars;
        while ((line = input.readLine()) != null) {
            lineChars = line.toCharArray();
            line = "";
            for(char c: lineChars){
                if(c == '*')break;
                line.concat(Character.toString(c));
            }
            if(!line.equals(""))
            String[] words = line.split(" ");           
        }
    
    0 讨论(0)
提交回复
热议问题