Konsole auf Textarea

Status
Nicht offen für weitere Antworten.

steve77

Bekanntes Mitglied
Hallo, ich habe immer noch probleme die Konsolenausgabe auf eine Textarea umzuleiten. Ich habe folgenden Quellcode:


Code:
public ConsoleTest() {
		frame = new JFrame("Console");

		JPanel consolePanel = new JPanel();
		consolePanel.setLayout(new BorderLayout());

		consoleTextArea = new JTextArea();
		consoleTextArea.setEditable(false);

		pane = new JScrollPane(consoleTextArea);
		consolePanel.add(pane, BorderLayout.CENTER);

		buttonPanel = new JPanel();
		FlowLayout jPanel1Layout = new FlowLayout();
		consolePanel.add(buttonPanel, BorderLayout.SOUTH);
		buttonPanel.setLayout(jPanel1Layout);

		openConsolButton = new JButton();
		buttonPanel.add(openConsolButton);
		openConsolButton.setText("Open console");
		openConsolButton.setActionCommand("open");
		openConsolButton.addActionListener(this);
		openConsolButton.setPreferredSize(new java.awt.Dimension(98, 21));

		closeButton = new JButton();
		buttonPanel.add(closeButton);
		closeButton.setText("Close");
		closeButton.setActionCommand("close");
		closeButton.addActionListener(this);
		closeButton.setPreferredSize(new java.awt.Dimension(98, 21));

		frame.getContentPane().add(consolePanel);

		frame.setSize(700, 900);
		frame.setVisible(true);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	
	}
		
		
		

		
		public static void main(String[] arg) throws IOException
	{
		new ConsoleTest(); // create console with not reference	
	}			
		
		
		
		}

Sollte eigentlich , denke ich?!, funktionieren?? Macht es aber leider nicht. Ich bekomme einen Fehlermeldung wenn ich die Sachen an den Textarea anhängen will.


Code:
 consoleTextArea.append( (char)b );


Er meckert über das append. Fehlermeldung. The method append (String)in the type JTextArea is not applicable for the argument (char).

Wie mache ich das denn richtig?

Vielen Dank

Stefan
 
Zuletzt bearbeitet von einem Moderator:

Leroy42

Top Contributor
Am einfachsten:
Code:
consoleTextArea.append(""+b);
um aus dem Integer ein String zu erzeugen.
 

Niki

Top Contributor
wohl kaum. dann wird die zahl ausgegeben, und nicht der richtige char. sollte eher so gehen: append(""+ (char)b);
 

steve77

Bekanntes Mitglied
Es ist zum verzweifeln, ich bekomme es nicht hin, dass die KOnsolenausgabe auf eine Textarea ausgegeben wird. Ich habe nun folgendes ausprobiert.

1.
Code:
public class ConsoleTestWindow extends JFrame
{
  private static final long serialVersionUID = -6154572297336259192L;

  /** Stream fuer Ausgabe */
  private ByteArrayOutputStream stream = new ByteArrayOutputStream();
  
  
  /** TextArea und Button fuer Formular */
  private JTextArea textArea;
  private JButton button;
  
  /**
   * Innere Klasse zur Verwaltung der ActionListener
   * beim Anklicken eines Buttons.
   * 
   * @author NetPanther
   */
  private class ButtonManager implements ActionListener
  {
     /**
      * Auf Anklicken eines Buttons reagieren.
      */
     public void actionPerformed(ActionEvent event)
     {
        Random rand = new Random();
        
        /**
         * zufaellig Text ausgeben oder Exception werfen
         */
        try
        {
           if (rand.nextBoolean())
           {
              System.out.print("Test Ausgabe");
           }
           else
           {
              throw new Exception("Fehler");
           }
        }
        catch (Exception e)
       {
           e.printStackTrace();
        }
        
    	 
    	 
    	 
        /** Buffer erzeugen und Zeit + Meldung anhaengen*/
        StringBuffer buffer = new StringBuffer();
                    
        buffer.append(new SimpleDateFormat("[HH:mm:ss]").format(new Date()) + ": ");
        buffer.append(new String(stream.toByteArray()) + "\n");
        
        /** Buffer ausgeben und zuruecksetzen */
        textArea.append(buffer.toString());
        stream.reset(); 
        
     }
  }
  
  /**
   * Konstruktor erzeugt ein Fenster mit einfacher
   * Fehlerkonsolte und Button.
   */
  public ConsoleTestWindow()
  {
     /** Fenster konfigurieren */
     super("Console");  
     JFrame.setDefaultLookAndFeelDecorated(true);  
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  

     /** Formular erzeugen */
     this.createForm(); 
  }
  
  /**
   * Klickt man die Schaltflaeche an, wird
   * zufaellig ein Text ueber System.out
   * ausgegeben oder eine Exception ueber
   * System.err geworfen.
   */
  private void createForm()
  {
     /** Ausgabe auf Stream umbiegen */
     System.setOut(new PrintStream(stream));
     System.setErr(new PrintStream(stream));
     
     /** TextArea und Button erzeugen*/
     textArea = new JTextArea();
     button = new JButton("Ausgabe erzeugen");  
     
     /** ActionListener an den Button haengen */
     button.addActionListener(new ButtonManager());
     
     /** Krams ins Fenster einfuegen */
     this.add(button, BorderLayout.NORTH);
     this.add(new JScrollPane(textArea), BorderLayout.CENTER);
  }
}

2.
Code:
import java.awt.EventQueue;

import javax.swing.JFrame;

/**
* Programmfenster erzeugen und Anwendung ausfuehren.
* 
*/
public class StarterClass
{
  /**
   * JFrameShower zum Anzeigen des Swing Fensters.
   *
   */
  static class JFrameShower implements Runnable
  {
     final JFrame frame;
     
     public JFrameShower(JFrame frame)
     {
        this.frame = frame;
        EventQueue.invokeLater(this);
     }

     public void run()
     {
        frame.setLocation(300, 300);
        frame.setSize(700, 350);
        frame.setVisible(true);
     }
  }
  
  /**
   * Hauptprogramm erzeugt Fenster und zeigt dieses an.
   * 
   * @param args Parameterliste
   */
  public static void main(String[] args)
  {
     new JFrameShower(new ConsoleTestWindow());
  }
}





Vielen Dank schonmal für die Hilfe.....

Stefan
 
Zuletzt bearbeitet von einem Moderator:
G

Guest

Gast
Wie kann ich die Konsolen ausgaben in einer Textdatei mitloggen?

Und wie kann ich das vll. auch noch in mehreren?

also ums kurz zu sagen, wie leite ich stdout, stderr, stdin in ne Textdatei um und wie mach ich mir selber solche Streams, die genauso easy anzusteuern sind?

Danke für eure Hilfe :)
 

Niki

Top Contributor
Vielleicht inspiriert euch das ja:
Code:
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.io.PrintStream;

import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.WindowConstants;

public class Main extends JFrame {

	private JTextArea area = null;

	public Main() {
		super("Outstream Umleitung");
		guiInit();
		pack();
		setLocationRelativeTo(null);
		setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
	}

	private void guiInit() {
		JComponent cont = (JComponent) getContentPane();
		cont.setLayout(new GridBagLayout());
		Insets i = new Insets(3, 3, 3, 3);
		GridBagConstraints c = new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0,
				GridBagConstraints.NORTHWEST, GridBagConstraints.BOTH, i, 0, 0);

		JScrollPane scroller = new JScrollPane();
		area = new JTextArea();
		scroller.getViewport().add(area);

		cont.add(scroller, c);
	}

	

	/**
	 * @param args
	 * @throws IOException
	 */
	public static void main(String[] args) throws IOException {
	
		final Main main = new Main();

		final PipedOutputStream pos = new PipedOutputStream();
		final PipedInputStream pis = new PipedInputStream(pos);
		final BufferedReader reader = new BufferedReader(new InputStreamReader(
				pis));

		System.setOut(new PrintStream(pos));
		System.setErr(System.out);

		Thread t = new Thread(new Runnable() {
			public void run() {
				while (true) {
					try {
						String line = reader.readLine();
						main.area.append(line + "\n");
					} catch (IOException e) {
						e.printStackTrace();
					}

				}
			}
		});
		t.setDaemon(true);
		t.start();

		main.setVisible(true);

		new Thread(new Runnable() {
			public void run() {
				int i = 0;
				while (true) {
					System.out.println("duh" + ++i);
					try {
						Thread.sleep(2000);
					} catch (InterruptedException e) {
					}
				}
			}
		}).start();

	}

}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Datum wird auf der Konsole richtig ausgegeben, aber im Textarea kommt ERROR Java Basics - Anfänger-Themen 8
Luk10 TextArea und Konsole ... Java Basics - Anfänger-Themen 3
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
M Anonyme Klassen - Warum wird in der Konsole nichts ausgegeben? Java Basics - Anfänger-Themen 1
Zrebna Kann Java Programm nicht in Konsole ausführen Java Basics - Anfänger-Themen 1
M Mein quellcode wird nicht in der Konsole ausgegeben Java Basics - Anfänger-Themen 3
M Nicht genug Eingabemöglichkeiten in der Konsole Java Basics - Anfänger-Themen 5
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
W char über die Konsole? Java Basics - Anfänger-Themen 7
J if-Schleife innerhalb einer if-Schleife wird in der Konsole nicht gelesen Java Basics - Anfänger-Themen 4
W Werte durch Konsole einlesen Java Basics - Anfänger-Themen 10
I 12 Spalten von jeweils 30 Zahlen in Konsole ausgeben Java Basics - Anfänger-Themen 6
I Java auf der Konsole Java Basics - Anfänger-Themen 5
C Erste Schritte Muster ausgeben in der Konsole - großes V Java Basics - Anfänger-Themen 5
K Ausgaben auf der Konsole (static Varible) Java Basics - Anfänger-Themen 9
S Tastatureingabe auslesen und in Konsole ausgeben Java Basics - Anfänger-Themen 6
C Ausgabe in der Konsole Java Basics - Anfänger-Themen 11
Zrebna Programm kann aus der Konsole nicht gestartet werden (in der IDE läuft es) Java Basics - Anfänger-Themen 2
J Konsole Java Basics - Anfänger-Themen 10
V Umgebungsvariable Genutzte Javaversion in der Konsole ändern Java Basics - Anfänger-Themen 5
N Tabelle schön in der Konsole ausgeben Java Basics - Anfänger-Themen 5
E Objekt durch Benutzer über Konsole erzeugen - Java Java Basics - Anfänger-Themen 3
D Tabelle in der Konsole Java Basics - Anfänger-Themen 3
J Gefilterten Stream über die Konsole ausgeben Java Basics - Anfänger-Themen 1
F Java auf Windows Konsole ausführen Java Basics - Anfänger-Themen 1
P Array einlesen von Konsole Java Basics - Anfänger-Themen 8
A Programm in Konsole Java Basics - Anfänger-Themen 4
I OOP Objektnamen über die Konsole richtig einlesen Java Basics - Anfänger-Themen 9
Bun17 Keine Ausgabe in der Konsole Java Basics - Anfänger-Themen 2
L Input/Output Wurzelzeichen in der Konsole ausgeben | Brauche Hilfe Java Basics - Anfänger-Themen 6
E Compiler-Fehler Javac Windows vs Ubuntu /Script vs Konsole Java Basics - Anfänger-Themen 4
E Best Practice Jar-file mit zwei Klassen und externer Bibliothek über Konsole erzeugen Java Basics - Anfänger-Themen 13
A Input/Output System.out Ausgabe aktualisieren, ohne Konsole vollzuspamen Java Basics - Anfänger-Themen 2
M Arrays auf Konsole formatiert ausgeben Java Basics - Anfänger-Themen 7
L Input/Output Konsole in Farben schreiben Java Basics - Anfänger-Themen 4
BlueFox Tabelle in der Konsole ausgeben - Probleme Java Basics - Anfänger-Themen 1
O Erste Schritte Scanner mehrere male benutzen (Konsole) Java Basics - Anfänger-Themen 7
O Etwas auf der Konsole ausgeben, usw. Java Basics - Anfänger-Themen 22
A Input/Output Prozess Output genauso in der Konsole ausgeben Java Basics - Anfänger-Themen 0
J Input/Output javac HelloWorld.java - Keine Textausgabe in der Konsole Java Basics - Anfänger-Themen 4
T Methoden Methode wird nicht auf Konsole ausgeführt Java Basics - Anfänger-Themen 3
T In Konsole darf nichts falsches eingetippt werden?! Java Basics - Anfänger-Themen 7
E Wie Passwort-Eingabe (ohne Echo!) über Konsole ? Java Basics - Anfänger-Themen 4
G Probleme mit Konsole Java Basics - Anfänger-Themen 4
J Zahlen aus Konsole einlesen Java Basics - Anfänger-Themen 1
C Input/Output Ein Spielbrett auf Konsole ausgeben Java Basics - Anfänger-Themen 2
F Wert in Linux auf die Konsole schreiben Java Basics - Anfänger-Themen 3
C Input/Output Einlesen von der Konsole mit InputStreamReader Java Basics - Anfänger-Themen 13
C Tannenbaum auf der Konsole ausgeben lassen Java Basics - Anfänger-Themen 12
Z AWT package -> keine Konsole? Java Basics - Anfänger-Themen 2
P Einlesen von der Konsole Java Basics - Anfänger-Themen 3
J Programm wird nicht auf der Konsole ausgeführt Java Basics - Anfänger-Themen 2
E Muster auf der Konsole ausgeben lassen (Schleifen) Java Basics - Anfänger-Themen 7
L Dialogbox statt Konsole verwenden Java Basics - Anfänger-Themen 5
B Konsole schließt sich sofort Java Basics - Anfänger-Themen 8
M Fortlaufende Konsole Java Basics - Anfänger-Themen 3
G Konsole gibt "alte" sachen aus Java Basics - Anfänger-Themen 3
L Konsole öffnen und Java Programm darin ausführen Java Basics - Anfänger-Themen 4
S Konsole Lanterna in NetBeans einbinden Java Basics - Anfänger-Themen 5
J ausgaben von der konsole in das fenster Java Basics - Anfänger-Themen 5
E Input/Output Konsole erkennt meinen Buchstaben nicht Java Basics - Anfänger-Themen 12
F String wird in Konsole nicht eingelesen Java Basics - Anfänger-Themen 19
A Objekte einer ArrayList auslesen und auf der Konsole ausgeben Java Basics - Anfänger-Themen 2
J Ausgabe auf der Konsole formatieren. Java Basics - Anfänger-Themen 6
T Konsole gibt nicht das Gewünschte aus Java Basics - Anfänger-Themen 5
N Mit Java Befehle auf Konsole ausführen Java Basics - Anfänger-Themen 4
M Input/Output Zeichen on Konsole einlesen Java Basics - Anfänger-Themen 3
S Erste Schritte Konsole leeren Java Basics - Anfänger-Themen 3
N String in Konsole schreiben?! Java Basics - Anfänger-Themen 2
S Beliebigen Tastendruck "einlesen" (ohne Konsole) Java Basics - Anfänger-Themen 3
F String wird richtig in konsole geschrieben aber falsch an Methode übergeben Java Basics - Anfänger-Themen 8
T Text auf der Konsole farbig machen Java Basics - Anfänger-Themen 6
OnDemand Applikation öffnen mit Konsole Java Basics - Anfänger-Themen 17
R Nach Ubuntu-Update: Konsole spuckt bei neu Kompilierten Programmen Fehler aus (BlueJ)(Ubuntu12.04) Java Basics - Anfänger-Themen 11
O Konsole - Kleine Frage Java Basics - Anfänger-Themen 22
O Bereits "gepostete" Strings in der Konsole verändern? Java Basics - Anfänger-Themen 2
T Parameter in Eigner Konsole Java Basics - Anfänger-Themen 2
B Erste Schritte Text in Konsole farbig ausgeben Java Basics - Anfänger-Themen 3
T Konsole leeren? Java Basics - Anfänger-Themen 7
K Methoden Einlesen einer unbegrenzten Matrix über Konsole Java Basics - Anfänger-Themen 6
S Programm läuft in Eclipse, aber nicht über Konsole Java Basics - Anfänger-Themen 10
E Keine Ausgabe der Konsole Java Basics - Anfänger-Themen 4
OnDemand Anführungszeichen im String werden als incompatible in der Konsole ausgegeben Java Basics - Anfänger-Themen 3
J Java Daten von Konsole einlesen (Spezielles Problem) Java Basics - Anfänger-Themen 6
D Erste Schritte Java Konsole öffnet sich nicht Java Basics - Anfänger-Themen 4
S Konsole schließen, nachdem Jar läuft Java Basics - Anfänger-Themen 5
H Exit Befehl in eigener Konsole Java Basics - Anfänger-Themen 9
Luk10 Exception beim Ausführen per Konsole Java Basics - Anfänger-Themen 6
S Konsole work time Java Basics - Anfänger-Themen 9
S runable jar in der Konsole Java Basics - Anfänger-Themen 2
D Konsole leeren? Java Basics - Anfänger-Themen 5
B Konsole beendet - Programm kontrolliert runter fahren Java Basics - Anfänger-Themen 2
K javac in der konsole Java Basics - Anfänger-Themen 4
N Logger-Ausgabe und die Konsole Java Basics - Anfänger-Themen 4
S Erste Schritte Java Konsole öffnen ohne Sysout. Java Basics - Anfänger-Themen 3
masii Spielfeld auf Konsole ausgeben Java Basics - Anfänger-Themen 3
D jar datei nur über konsole ausführbar Java Basics - Anfänger-Themen 4
C Minesweeper mit Arrays über Konsole Java Basics - Anfänger-Themen 4
S Ausgabe auf Konsole nummerieren Java Basics - Anfänger-Themen 2
U jar funktioniert nur über konsole Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben