AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Java - Zeilenumbruch

Ein Thema von Xanatos · begonnen am 3. Dez 2007 · letzter Beitrag vom 3. Dez 2007
Antwort Antwort
Xanatos

Registriert seit: 23. Jul 2007
2 Beiträge
 
#1

Java - Zeilenumbruch

  Alt 3. Dez 2007, 17:06
Ich rede nicht gerne um den heißen Brei herum und komme deswegen sofort zu meinem Problem.

In der Schule haben wir mit Java angefangen und sollen jetzt ein Programm schreiben, welches einen vorgegebenen Text in eine bestimmte Zeilenlänge umbricht. Diese Zeilenlänge wird im Programm abgefragt und natürlich soll nicht mitten in den Wörtern umgebrochen werden, sondern nach Wörtern.

Mein Problem ist, dass sich bei mir irgendwo ein Fehler eingeschlichen hat. Ich weiß, dass ich über den Index hinaus lese, aber ich sehe nicht wo, und wann.

Der Code befindet sich auch in der angehängten Datei, aber ich schreibe ihn auch hier hin.

Ich erwarte keine Lösung und vorallem nicht eine Lösung die ich nicht kapiere.
(Ihr sollte nicht meine Hausaufagen machen)
Aber ein Tipp was falsch ist und vorallem warum wäre nicht schlecht, da ich schon mehrere Stunden über diesen Fehler nachgedacht habe.

MfG Xanatos

Code:
import java.io.*;

public class Zeilenumbruch
{
  static BufferedReader Tastatur;
  static String Text, Zeile;
  static int Laenge, Stelle, Last;
 
 
  public static void lesen()
  {
    System.out.println("Bitte geben Sie die gewünschte Länge ein!"+
    " (Länge muss größer als 15 sein)");
    try
    {
      Laenge = Integer.parseInt(Tastatur.readLine());
    }
    catch (Exception e)
    {
      System.out.println("Fehlerhafte Eingabe");
    }
  }
 
  public static void ausgabe()
  {
    while (Stelle < Text.length())
    {
      if (Stelle + Laenge < Text.length())
      {
        Zeile = Text.substring(Stelle, Stelle + Laenge + 1);
        Last = Zeile.lastIndexOf(" ");
        Zeile = Zeile.substring(0, Last + 1);
        System.out.println(Zeile.trim());
        Stelle = Stelle + Zeile.length() - 1;
      }
      else
      {
        Last = Text.length() - Stelle;
        System.out.println(Stelle);
        System.out.println(Last);
        System.out.println(Text.length());
        Zeile = Text.substring(Stelle, Last + 1);
        System.out.println(Zeile);
      }
    }
  }

  public static void main(String[] agrs) throws IOException
  {
    Text = "Wie Sie an diesem Beispiel sehen können macht es keinen guten" +
           "Eindruck, wenn man einfach seinen Text nur in eine einzige Zeile" +
           "schreibt. Man muss dann den Text scrollen und das ist lästig. " +
           "Besser wäre es, wenn der Text in passende Zeilen umbrochen wäre. " +
           "Ihre Aufgabe ist es also, diesen Text zu kopieren und einer " +
           "Stringvariable zuzuweisen. Lesen Sie von der Tastatur die" +
           "gewünschte Zeilenlänge ein und geben Sie anschließend diesen Text" +
           "entsprechend umbrochen aus.";
    Stelle = 0;
    Tastatur = new BufferedReader(new InputStreamReader(System.in));
           
    lesen();
    if (Laenge > 15)
    {
      System.out.println();
      ausgabe();
    }

  }
}
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Java - Zeilenumbruch

  Alt 3. Dez 2007, 17:22
Versuch mal das \n Steuerzeichen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz