Hjelp til å lage din webside/applikasjon?

Vi hjelper deg med problemer du har underveis i utviklingen av din webside. Vi tilbyr også rimelige fast- eller timespriser for å lage hele løsningen for deg, ingenting er for stort eller for lite. Vil du bestille eller vil ha et uforpliktende tilbud, send oss en mail på support@kodehjelp.no. Vi har eksperter innenfor HTML, CSS(Design), JAVASCRIPT og .NET utvikling.

Java hvordan telle ord i en fil

Dette eksemplet demonstrerer hvordan man kan telle antall linjer, antall ord og antall tegn i en fil. Programmet tar et filnavn som parameter og teller opp linjer og ord. Dersom man ikke skriver inn et filnavn må man skrive inn en tekst etter programmet har startet og det vil telle derfra.


Eksempel:
import java.io.*;

public class  TellOrd{
  private static void linjeantall(String fNavn, BufferedReader in) throws IOException{
  long antTegn = 0;
  long antLinje=0;
  long antOrd = 0;
  String line;
    do{
      linje = in.readLine();
      if (line != null){
        antTegn += linje.length();
        antOrd += tellord(line);
        antLinje++;
      }
    }while(linje != null);
    System.out.println("Filnavn: " + fNavn);
    System.out.println("Antall tegn: " + antTegn);
    System.out.println("Antall ord: " + antOrd);
    System.out.println("Antall linjer: " + antLinje);
  }
  private static void tellinje(String filNavn){
    BufferedReader in = null;
    try{
      FileReader fileReader = new FileReader(filNavn);
      in = new BufferedReader(fileReader);
      tellinje(filNavn,in);
    }
    catch(IOException e){
      e.printStackTrace();
    }
  }
  private static long tellord(String linje){
    long antOrd = 0;
    int index = 0;
    boolean prevWhiteSpace = true;
    while(index < linje.length()){
      char c = linje.charAt(index++);
      boolean currWhiteSpace = Character.isWhitespace(c);
      if(prevWhiteSpace && !currWhiteSpace){
        antOrd++;
      }
      prevWhiteSpace = currWhiteSpace;
    }
    return antOrd;
  }
  public static void main(String[] args){
    long antTegn = 0;
    long antLinje=0;
    String linje;
    try{
      if (args.length == 0)
      {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        linje = in.readLine();
        antTegn = linje.length();
        if (numChar != 0){
          antLinje=1;
        }
        System.out.println("Antall tegn: " + antTegn);
        System.out.println("Antall ord: " + tellord(linje));
        System.out.println("Antall linjer: " + antLinje);
      }else{
        for(int i = 0; i < args.length; i++){
          tellinje(args[i]);
        }
      }
    }
    catch(IOException e){
      e.printStackTrace();
    }
  }
}