Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Metoda pro extrakci dat z txt

Aktivity
Avatar
Paul
Člen
Avatar
Paul:6.6.2014 14:29

Ahoj,

mám soubor s daty v HTML formátu uložený v txt.
Z tohoto souboru bych potřeboval vyextrahovat všechny řádky, které následují za řádkem, ve kterém je text: "Nalezeno dokumentů".

Zde je způsob, kterým jsem to zkoušel udělat, ale bohužel pořád vypisuje první řádek ze souboru.
Určitě je jednoduchá cesta jak na to, ale ja na ní nepřijdu páč začínám :-D

Předem díky za pomoc.

public void zpracujData() throws FileNotFoundException, IOException {
    BufferedReader br = new BufferedReader(new FileReader(txtSouborSDaty));
    String radek;
    boolean extrahovanyText = false;
    while ((radek = br.readLine()) != null) {
        if (radek.contains("Nalezeno dokumentů")) {
            extrahovanyText = true;
        }
        while (extrahovanyText = true) {
            System.out.println(radek);
        }
    }
}
 
Odpovědět
6.6.2014 14:29
Avatar
Ladislav Ondris:6.6.2014 14:39

Ahoj, zkus takto:

public void zpracujData() throws FileNotFoundException, IOException {
     BufferedReader br = new BufferedReader(new FileReader(txtSouborSDaty));
     String radek;
     boolean extrahovanyText = false;
     while ((radek = br.readLine()) != null) {
         if (!radek.equals("Nalezeno dokumentů")) {
             System.out.println(radek);
         }
     }
 }
Nahoru Odpovědět
6.6.2014 14:39
Pokud neděláš chyby, nepracuješ na dostatečně těžkých problémech.
Avatar
Paul
Člen
Avatar
Odpovídá na Ladislav Ondris
Paul:6.6.2014 14:42

Toto vypíše celý text ze souboru. mně jde o to, že zhruba v polovině souboru je text "Nalezeno dokumentů" a já potřebuji vypsat vše co je za ním.

 
Nahoru Odpovědět
6.6.2014 14:42
Avatar
Ladislav Ondris:6.6.2014 14:46

tak v tom případě takto:

public void zpracujData() throws FileNotFoundException, IOException {
      BufferedReader br = new BufferedReader(new FileReader(txtSouborSDaty));
      String radek;
      boolean text = false;
      while ((radek = br.readLine()) != null) {
          if (radek.equals("Nalezeno dokumentů")) {
              text = true;
          }
          if (text == true){
              System.out.println(radek);
          }
      }
  }
Nahoru Odpovědět
6.6.2014 14:46
Pokud neděláš chyby, nepracuješ na dostatečně těžkých problémech.
Avatar
Paul
Člen
Avatar
Odpovídá na Ladislav Ondris
Paul:6.6.2014 14:52

Ou jééé díky moc! Řešil jsem to stejným způsobem, akorát jsem u ověřování text == true dal text = true. školácká chyba. Díky za pomoc :-)

 
Nahoru Odpovědět
6.6.2014 14:52
Avatar
Ladislav Ondris:6.6.2014 14:53

Nemáš zač ;) ..taky se mi to už stalo :P

Nahoru Odpovědět
6.6.2014 14:53
Pokud neděláš chyby, nepracuješ na dostatečně těžkých problémech.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.