Eingabe: Java-Code, Ausgabe: Pseudotext (Anfänger)

Gespenstergesicht

Grünschnabel
Guten Morgen,

ich habe mich in letzter Zeit ein bisschen mit Java auseinandergesetzt und würde nun gerne ein Programm erstellen, welches eine Zeile Java-Code einliest und anschliessend als Pseudotext ausgibt. Es soll alles über Konsolenein- und ausgabe fungieren. Wenn ich z.B.
Code:
long test = 5;
eingebe, soll "Variable test als langer Integer-Wert deklariert und mit 5 initialisiert" ausgegeben werden.


So habe ich bisher angefangen:

Code:
package test; 

import element.*; // Konsole 
import java.io.*; 

public class test { public static void main (String[] args) throws IOException { 

ConsoleWindow cw1 = new ConsoleWindow(); 

BufferedReader stdin = new BufferedReader(new InputStreamReader(cw1.in)); 

cw1.out.println( "Please enter a line of Java:"); 

inData = cw1.input.readLine(); 

} 
}

Jetzt weiss ich aber leider nicht genau, wie ich weiter verfahren soll. Meine Java-Kenntnisse sind nicht berauschend. Kann mir da einer von euch ein wenig Hilfestellung geben oder kennt jemand eine Website, wo ich nähere Informationen zur Struktur eines solchen Programms finde?

Vielen Dank,

Das Gespenstergesicht
 
Moin,
also ich bin mir ziemlich sicher, dass sich zu dem Thema Einlesen von der Konsole einige Beiträge im Forum finden lassen. Benutz mal die Suchfunktion. Ebenso zum Thema String verarbeiten/parsen.
 
Regexp .. also Reguläre Ausdrücke sind auch noch ein ganz gutes Schlagwort zum Suchen, denke ich. :)
 
Hallo,

über die Suchfunktion konnte ich leider nichts spezifisches finden. Wäre jemand so freundlich und würde mir einen Direktlink geben?

Grüße,

Das Gespenstergesicht
 
Hallo,

ich bin es noch einmal... ;) Ich habe jetzt mal ein bisschen "herumgebastelt" und bin auf folgenden Code gekommen:

Code:
package test;

import element.*;
import java.io.*;

public class test { public static void main (String[] args) throws IOException {

        ConsoleWindow cw1 = new ConsoleWindow();

        BufferedReader stdin = new BufferedReader(new InputStreamReader(cw1.in));

        String inData1;
        String inData2;
        String output;
        char myChar;
        int counter;
        counter = 0;
        inData2 = "";
        output = "Variable ";

        cw1.out.println( "Bitte geben Sie eine Zeile Java-Code ein:");

        inData1 = cw1.input.readLine();

        while (counter < inData1.length())
         {
             myChar = inData1.charAt(counter);

             if (myChar == ' ' || myChar == ';')
                {
                if (inData2.equals("long"))        
                {
                    output += "als langer Integer-Wert deklariert ";
                }
                else if (inData2.equals("="))
                { 
                    output += "und initialisiert mit ";
                }

                else 
                {
                    output += inData2;
                }

             inData2 = "";

             cw1.out.println(inData2);
             }

             else
             {
             inData2 += myChar;
             }
             counter++;             
         }
         
         cw1.out.println("Pseudotext: " + output);
    }
}

Stimmt das in die Richtung bzw. kann mir das einer von euch noch irgendwie verbessern?

Grüße,

Das Gespenstergesicht
 
Zurück