2014-02-04 1 views
0

я пытаюсь использовать метод String, в то время как петли, так что я могу прочитать часть файла, код этокак использовать метод String, в то время как петля

package AnimeAid; 

import java.io.*; 
import java.nio.charset.Charset; 
import java.nio.file.Files; 
import java.nio.file.Path; 
import java.nio.file.Paths; 

public class ReadFile { 


    public void getFileInformation() throws IOException { 

     try{ 
     String file; 
     file = "tra.srt"; 
     Charset charset = Charset.defaultCharset(); 
     Path path = Paths.get(file); 
     BufferedReader reader = Files.newBufferedReader(path, charset); 
     System.out.printf("Lines from %s:%n",file); 
     String line; 
     int num = 5; 
     while((line = reader.readLine()) != null && line.indexOf(':') != -1){ 
      System.out.println(line.substring(0, 10)); 


     } 
     }catch(FileNotFoundException ex){ 
     System.err.println(ex); 
     } 
    } 
} 

теперь не дает мне никаких сообщений об ошибках, но его не дает правильный ответ, и мне нужно использовать возвращение не System.out.print

 Lines from tra.srt: 
BUILD SUCCESSFUL (total time: 0 seconds) 

как файл выглядеть

1 
00:00:01,600 --> 00:00:04,080 
<b>Mr Magnussen, please state your 
full name for the record.</b> 

2 
00:00:04,080 --> 00:00:07,040 
Charles Augustus Magnussen. 

выхода больше всего будет временем 00:00:01,600 от каждой линии, как он знает, глядя на каждый : знака

+0

Рассмотрите возможность использования StringBuffer или StringBuilder. – Koitoer

ответ

2
line.indexOf(':') 

возвращает целое число. Это означает, что у вас есть while (boolean && int), что не имеет смысла в мире Java. Вы должны сравнить результат метода indexOf, чтобы получить там также логическое значение.

Например:

while((line = reader.readLine()) != null && line.indexOf(':') != -1) 
+0

спасибо, но все же я не могу заставить его работать из-за строки, мне нужно сказать java, что когда когда-либо это файл не пуст и что строка имеет знак «:» подстроить его, но строка, поскольку refrense is wrong –

+0

не могли бы вы рассказать мне, как исправить это? PLZ я оглядываюсь на два дня –

+0

Нет, если вы не сообщите мне точное сообщение об ошибке. –

 Смежные вопросы

  • Нет связанных вопросов^_^