Worte aus Textdatei mit Java ersetzen

Status
Nicht offen für weitere Antworten.
M

MacSebastian

Gast
Hallo, ich habe folgendes Problem:

Ich soll in eine Java-Klasse einen String aus einer Textdatei einlesen. Dann sollen Schlüsselwörter, die mit den Identifiern %word% gekennzeichnet sind, gegen in einem Array gespeicherte Namen getauscht werden. Schließlich soll die Datei unter dem NAmen gespeichert werden, der im text ersetzt wurde. Mein Code wird übersetzt, ohne Syntaxfehler. Nur bekomme ich beim ausführen der Methoden die Meldung "Leeres Parameterfeld". Wo liegt mein Fehler ? Arbeite mit BlueJ. Bitte um Hilf. Hier mein Code:

Code:
import java.io.File; 
import java.io.IOException; 
import java.io.FileWriter; 
import java.io.FileReader; 
import java.io.FileNotFoundException; 
import java.util.Date; 
import java.text.DateFormat; 

/** 
* Gefragt ist nach einer Klasse, die aus einer besteneden Datei Serienbrief.txt 
* alle Zeichen ausliest, diese in einn temporären Speicherplatz schreibt, dann mit % gekennzeichnete 
* Schlüsselbegriffe findet, und diese durch in einem String gespeicherte Namen ersetzt. Dann soll die 
* Datei unter dem Namen, der ausgewechselt wurde, mit der Endung txt gespeichert werden. 

*/ 


public class SB { 

/** 
* Festlegung der Variablen der Klasse und des Strings zur Speicherung der Namen 
*/ 

   public static String[] namen={"Spock","Kirk","McCoy","Uhura","Tschechov"}; 
   public static String sb; 
   public static File newFile; 
   
   
/** 
* Hier soll der String aus der Datei Serienbrioef ausgelesen werden 
* und in die Variable sb zwischengespeichert werden. 
*/   


public static String readFileContent (File newFile) { 
    StringBuilder sb = new StringBuilder(); 
    try { 
            FileReader reader = new FileReader(newFile); 
            int character; 
            while ((character=reader.read()) >-1) { 
                sb.append((char) character); 
            } 
            reader.close(); 
        } catch(FileNotFoundException fnfe) { 
            fnfe.printStackTrace(); 
        } catch (IOException ioe) { 
            ioe.printStackTrace(); 
        } 
        return sb.toString(); 
    } 
     

/** Nunn sollen die im mit Identifier gekennzeichneten Worte ausgelesen 
*  und gegen die Namen ausgetauscht werden. 
*/ 

public static void ersetze() { 
        String datum = DateFormat.getDateInstance().format(new Date()); 
        sb = sb.replaceAll("ÚTUM%", datum); 
        for (String name : namen) { 
            sb = sb.replaceAll("%NAME%", name); 
        } 
        System.out.println(sb); 
    } 

/** 
* Der veränderte String soll in eine Datei gespeichert werden, die den Namen des 
* angeschriebenen aus dem String enthält. 
*/ 

public static void main(String ... args) throws IOException { 
    for (String name : namen) { 
        File newFile = new File(name + ".txt"); 
    } 
    newFile.createNewFile(); 
    FileWriter writer = new FileWriter(newFile); 
    writer.write(sb); 
    writer.flush(); 
    writer.close(); 
} 


}
 

abollm

Top Contributor
So auf die Schnelle betrachtet, ist mir klar, dass das eine Exception wirft:

1. String sb -> null
2. newFile ist nach der for-Schleife ebenfalls null

Also initialisiere den String sb mit irgendetwas und verlagere deine Dateioperationen in die for-Schleife.
 

abollm

Top Contributor
Ich habe mal ein bisschen deinen Code verändert, obwohl ich mir nicht die Mühe gemacht habe, ihn zu verstehen.

String initialiiseren:
Code:
[..]
	public static String sb = "Dies ist ein ziemlich langer Text, der %NAME% und ÚTUM% enthält, was auch immer das zu bedeuten hat!";
[..]

File-Routinen in Schleife und die Methode "ersetze()" darin jeweils aufrufen:
Code:
[..]
		int i=0;
		String fileName[] = new String[namen.length];
		for (String name : namen) {
			fileName[i] = name + ".txt";
			File newFile = new File(fileName[i]);
			newFile.createNewFile();
			FileWriter writer = new FileWriter(newFile);
			writer.write(sb);
			ersetze();
			writer.flush();
			writer.close();
			i++;
		}
[..]

Hth
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T String mehrere Worte Allgemeine Java-Themen 2
A wie bildet man worte? Allgemeine Java-Themen 5
E Beliebig viele Worte Allgemeine Java-Themen 5
I Java-Programm: Zahlen in Worte Allgemeine Java-Themen 22
P RegEx - Worte ausschließen Allgemeine Java-Themen 8
O Text aus einer Textdatei rausholen, der zwischen zwei Schlüsselworten steht Allgemeine Java-Themen 4
S Textdatei statt von Dateisystem aus .jar lesen Allgemeine Java-Themen 3
curranux Ausgabe als Textdatei schreiben. Allgemeine Java-Themen 2
killig Textdatei einlesen und in HashMap speichern (duplikate entfernen) Allgemeine Java-Themen 12
B Scanner erkennt keinen Text in Textdatei, obwohl welcher drinsteht Allgemeine Java-Themen 10
M In Textdatei schreiben Allgemeine Java-Themen 3
F Problem beim Einlesen einer Textdatei Allgemeine Java-Themen 12
J Bestimmte Zeile aus Textdatei auslesen Allgemeine Java-Themen 18
OnDemand Download Textdatei falsches Charset Allgemeine Java-Themen 1
K Textdatei als Objekt Allgemeine Java-Themen 4
O JAR Export Textdatei benutze Allgemeine Java-Themen 14
stylegangsta Mehrere html seiten einer Homepage einlesen und als Textdatei ausgeben Allgemeine Java-Themen 14
L Filewriter schreibt Zahlen in Textdatei Allgemeine Java-Themen 2
D Input/Output Zeilen werden "ignoriert" beim Einlesen aus einer Textdatei Allgemeine Java-Themen 3
T Synchronisation einer Textdatei im Groupshare Allgemeine Java-Themen 1
I String einer Textdatei anfügen Allgemeine Java-Themen 2
S Von Wav Datei mit Morsecode in Morsecode als Textdatei Allgemeine Java-Themen 2
R Duplikate aus einer Textdatei entfernen? Allgemeine Java-Themen 20
K Input/Output Ausgabe in Textdatei Allgemeine Java-Themen 7
Iron Monkey Inhalt von JTable in die Textdatei mit StringWidth schreiben Allgemeine Java-Themen 3
J Textdatei auslesen, die gerade benutzt wird Allgemeine Java-Themen 8
P Textdatei aus Ressourcen laden. Allgemeine Java-Themen 8
W Auslesen von Textdatei Allgemeine Java-Themen 16
M gleichzeitiger Zugriff auf eine Textdatei Allgemeine Java-Themen 6
S TextDatei in Panel anzeigen Allgemeine Java-Themen 10
X Textdatei auf gewünschte Anzahl der Zeilen kürzen Allgemeine Java-Themen 2
S Input/Output Latin-9 (ISO 8859-15) Textdatei einlesen Allgemeine Java-Themen 2
L Input/Output Textdatei in Objekte überführen? Allgemeine Java-Themen 4
F In mitten einer Textdatei schreiben Allgemeine Java-Themen 7
N Textdatei in Jar Problem Allgemeine Java-Themen 6
B Leerzeile in Textdatei Allgemeine Java-Themen 3
B Textdatei Zeilen auslesen Allgemeine Java-Themen 7
E BlueJ Daten in Textdatei schreiben Allgemeine Java-Themen 21
D große Textdatei filtern Allgemeine Java-Themen 13
K Textdatei komplett auslesen bis auf 2 Zeilen Allgemeine Java-Themen 2
H Textdatei (1GB) einlesen und verarbeiten Allgemeine Java-Themen 15
S String verschlüsselt in Textdatei speichern Allgemeine Java-Themen 3
E Text ans Ende einer Textdatei anfügen Allgemeine Java-Themen 2
Balbes Dateipfad in den JFileChooser aus Textdatei einlesen Allgemeine Java-Themen 7
S Textdatei mit externen Editor öffnen Allgemeine Java-Themen 8
G Textdatei einlesen unter Windows 7 Allgemeine Java-Themen 4
A Textdatei im Applet einlesen Allgemeine Java-Themen 2
C Textdatei einlesen Allgemeine Java-Themen 3
L Textdatei nach Wörter durchsuchen Allgemeine Java-Themen 3
Psypsy Bits in Textdatei und zurück Allgemeine Java-Themen 3
A Zeilen aus einer Textdatei löschen Allgemeine Java-Themen 6
ModellbahnerTT Problem: Schleife über Textdatei Allgemeine Java-Themen 5
W Auslesen einer Textdatei Allgemeine Java-Themen 2
D HILFE - Textdatei im jar auslesen Allgemeine Java-Themen 10
T Auslesen und schreiben in eine Textdatei.HILFE!HILFE! Allgemeine Java-Themen 23
G Mit FileWriter in Textdatei über jar Allgemeine Java-Themen 4
E textdatei über "öffnen mit" aufrufen Allgemeine Java-Themen 6
A Objekte in Textdatei weiterschreiben Allgemeine Java-Themen 5
M Textdatei auslesen / schreiben (Server) Allgemeine Java-Themen 9
D Textdatei umbenennen Allgemeine Java-Themen 2
C Software für Windows PC mit integierter Db oder Textdatei? Allgemeine Java-Themen 19
G 2 zeilen in textdatei beim auslesen verbinden Allgemeine Java-Themen 10
D Zeilenvorschub aus einer Textdatei rausnehmen Allgemeine Java-Themen 11
J Textdatei oder doch DB? Allgemeine Java-Themen 2
T GUI mit DB oder Textdatei? Allgemeine Java-Themen 11
G Textdatei in String einlesen Allgemeine Java-Themen 2
M Inhalt von Textdatei in Spinner Allgemeine Java-Themen 5
M neue Textdatei DOS/Unix-Format Allgemeine Java-Themen 11
E Zeilenumbruch in einer Textdatei Allgemeine Java-Themen 2
E Zeilenbumbruch in einer Textdatei Allgemeine Java-Themen 3
D Textdatei und JTextArea Allgemeine Java-Themen 5
G Unterscheidung: Binär- oder Textdatei Allgemeine Java-Themen 13
B Zeilenumbruch bei Schreiben einer Textdatei Allgemeine Java-Themen 10
M Textdatei per Request lesen? Allgemeine Java-Themen 2
L Textdatei einlesen und verändern Allgemeine Java-Themen 3
M Problem: Textdatei einlesen Allgemeine Java-Themen 2
Y Einlesen & Ausgeben einer Textdatei _2 Allgemeine Java-Themen 3
Y Einlesen & Ausgeben einer Textdatei Allgemeine Java-Themen 5
M Fehler beim öffnen einer 20 mb Textdatei im sign. Applet Allgemeine Java-Themen 5
byte Erste Zeile einer Textdatei entfernen Allgemeine Java-Themen 5
G Eingaben in Textdatei speichern Allgemeine Java-Themen 5
P Einlesen einer Textdatei Allgemeine Java-Themen 8
P Problem beim "spliten" eine Textdatei Allgemeine Java-Themen 3
T jar + Textdatei Allgemeine Java-Themen 2
X Bestimmtes Muster in Textdatei verändern Allgemeine Java-Themen 13
G Inhalt einer Textdatei in eine AWT List schreiben Allgemeine Java-Themen 3
G auslesen einer Textdatei Allgemeine Java-Themen 2
E Source-Code aus einer Textdatei kompilieren und ausführen Allgemeine Java-Themen 4
D Textdatei zeilenweise einlesen Allgemeine Java-Themen 2
OnDemand Java Deployment Vaadin Allgemeine Java-Themen 3
D Hat Java eine Library um JavaScript auszuwerten? Allgemeine Java-Themen 2
Zrebna Wieso sind eigentlich JUnit-Tests in src/test/java platziert - nur Konvention? Allgemeine Java-Themen 7
N LlaMA, KI, java-llama.cpp Allgemeine Java-Themen 39
V Java-Codierungsherausforderung: Navigieren durch die Macken der Datumsmanipulation Allgemeine Java-Themen 2
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
M java: unexpected type Allgemeine Java-Themen 2
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
BetziTheRealOne Java PKIX path building failed as non Admin Allgemeine Java-Themen 15
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19

Ähnliche Java Themen

Neue Themen


Oben