使用equals比较char

时间:2013-10-09 03:17:28

标签: java

如果我正在扫描文本

Scanner s= new Scanner("texto.txt");

//我想将该行中的下一个字符与<

进行比较

//像这样:

if(s.nextChar().equals("<")){
.....

我知道s.nextChar()不存在,但在这种情况下有什么类似的东西可用吗?

3 个答案:

答案 0 :(得分:1)

你的代码就像......

Scanner s= new Scanner("texto.txt");
s.useDelimiter("");
while (s.hasNext()) {
    if(s.nextChar()=='<'){
 .....
} 

请注意,在调用s.nextChar()之后,实际上会获取该值,因此如果您想进一步使用它,最好保留该变量,例如:

char ch = s.nextChar();

答案 1 :(得分:0)

考虑转储Scanner并使用FileReader:

FileReader fileReader = new FileReader("textto.txt");

int charRead
while( (charRead = fileReader.read()) != -1)
{
   if(charRead == '<')
   {
      //do something
   }
}

答案 2 :(得分:0)

      FileReader reader = null;
  try {
     reader = new FileReader("");
     int ch = reader.read() ; 
     while (ch != -1) {
        // check for your char here
     }
  } catch (FileNotFoundException ex) {
     //
  } catch (IOException ex) {
     //
  } finally {
     try {
        reader.close();
     } catch (IOException ex) {
        //
     }
  }