2010-08-21 2 views
3
public static void getMembers(WebDriver driver, String outname){ 

    FileWriter outFile = null; 
    try { 
     outFile = new FileWriter(new File("myfile.txt")); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    //continue from 900 
    for(int i=1;i<=5070;i++){ 
     driver.get("/username&page="+i); 

     List<WebElement> links = driver.findElements(By.xpath("/html/body/div[2]/div/div/form/table[2]/tbody/tr/td/a")); 
     for(WebElement link : links){ 

      if (link.getText() == ""){     
      }else{ 
      try { 
       outFile.write(link.getText() + "\n"); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
      System.out.println(link.getText()); 
      } 
     } 

    } 
} 

System.out.println (link.getText()); выплевывает соответствующие строки .... однако myfile.txt пуст!JAva: Почему в мой txt-файл ничего не написано?

ответ

5

Вы не закрыли outFile:

outFile.close(); 

Закрытие файла смывает любой буферизованный вывод и записывает его в файл на диске. Сделайте это после того, как закончите писать все в файл.

+0

, где я могу добавить это в код? – KJW

+0

также, открывая файл, в текстовом файле есть странные черные ящики с o внутри черного ящика. – KJW

+0

@ Ким Чен Ву, Грег сказал вам, где положить его в ответ. Когда вы закончите. Вероятно, вы увидите частично написанные результаты в файле, если не закончите писать. Кроме того, вам может потребоваться исследовать кодировки и посмотреть, какая кодировка редактора, которую вы открываете, с предположениями. –