import java.io.*; import java.util.*; import java.lang.*; /** * * Diese Klasse liest beim Instanziieren alle * Slogans aus der ihr übergebenen Datei aus. * * @author HaJo Rode * */ public class SloganList { private String fileName; public static final String FILENAME = "slogans.txt"; private ArrayList alSlogans; private static int anzStrings; private static final int kB = 1; /** * verantwortlich für die Auswahl eines zufällig gewählten * Slogan aus der Datei * * @param fn Name der Datei * */ public SloganList ( String fn ) { alSlogans = new ArrayList(); fileName = fn; try { File file = new File ( fn ); FileInputStream inStream = new FileInputStream (file); InputStreamReader reader = new InputStreamReader (inStream); BufferedReader buffer = new BufferedReader (reader); while (buffer.ready()) { String line = buffer.readLine(); alSlogans.add( line ); // System.out.println(line); } buffer.close(); } catch (FileNotFoundException fnfE) { fnfE.printStackTrace(); } catch (IOException ioE) { ioE.printStackTrace(); } anzStrings = alSlogans.size(); // System.out.println( "Anzahl der Elemente: " + anzStrings ); String test = randomSlogan(); } /** * erzeugt ein Zufallszahl und holt aufgrund dieser * einen String aus dem Array * * @return einen zufälligen String */ public String randomSlogan() { // String sRes = ""; double erg = Math.random(); double res = erg * (anzStrings-1); // System.out.println( "im RandomSlogan = result: " + res ); int ires = (int) Math.round( res ); // System.out.println( "im RandomSlogan = result: " + ires ); // System.out.println( "im RandomSlogan = result: " + ires ); String sRes = (String) alSlogans.get( ires ); if ( kB == 1 ) { sRes = sRes.toLowerCase(); } System.out.println( "zurueckgeliefert wuerde: " + sRes ); return sRes; } /** * * diese Methode wird nur für den Test benötigt * */ public static void main (String args[]) { SloganList sl = new SloganList( FILENAME ); } }