Zeichen/char in einer Datei löschen

Status
Nicht offen für weitere Antworten.
Z

zco

Gast
Hallo :D ,

mein Problem ist folgendes: Ich öffne eine Datei, lese in dieser bis zu einem bestimmten Zeichen alle chars aus. Diese ausgelesenen chars möchte ich aber nach dem lesen gelöscht haben.
Also ein Beispiel:

123#456#789#

steht in der Datei. Ich lese jetzt mit dem FileReader solange das erste Zeichen ein, bis das # auftaucht. Und danach sollen 123# gelöscht werden (oder direkt nach dem einlesen eines Zeichens). So das folgendes Ergebnis in der Datei steht:

456#789#

Das einfachste wäre ja eigentlich alle Zeichen die nach dem ersten # kommen in ne neue Datei zu kopieren, die alte löschen und die andere umzubenennen. Ist mir aber von der Laufzeit her zu aufwendig. Deshalb hoffe ich das es in Java etwas derartiges gibt und ihr mir weiter helfen könnt :wink: .

Gruß zco
 

Murray

Top Contributor
Sowas gibt es in Java nicht; eigentlich kann ich mir auch nicht vorstellen, dass das in anderen Sprachen geht.
 

dieta

Top Contributor
Du musst nicht den Umweg mit dem Erstellen einer neuen Datei machen. Es reicht, wenn du die alte überschreibst.
 
Z

zco

Gast
erstmal vielen dank für eure Antworten

ok, ich hab das jetzt mal so gemacht:

Code:
FileReader f = new FileReader(receiver+".dbws");
	    		    	
//aktuellen Befehl lesen
char cOut;
cOut = (char)f.read();
System.out.println(cOut);
while(cOut != '#'){
	returnText = returnText + (char)cOut;
	cOut = (char)f.read();	    		
}
	    	
//die ersten Zeichen entfernen
int iOut;
String sFile = "";
while((iOut = f.read())!=-1){
	//Zeichen in String speichern
	sFile = sFile + (char)iOut;
}	    	
//FileReader wird nicht mehr benötigt
f.close();
	    	
//String in Ausgabe-Datei schreiben
FileWriter w = new FileWriter(receiver+".dbws");
w.write(sFile);
w.close();

das Programm, wo dieser Code dazugehört läuft auf nem Apache Axis-Server. Ich kann (bzw. ich weiß nicht wie) das Programm also nicht debuggen um mir mal anzuschauen warum er sich aufhängt. Ich vermute es liegt daran, das wenn die Datei leer ist (nur dann überlastet sich Tomcat) läuft er in ner Endlosschleife (erste while-Schleife). Kann das sein? Und wenn ja, was mache ich falsch?

???:L
 

Murray

Top Contributor
FileReader#read liefert -1, wenn das Dateiende erreicht ist. Da-1 auf char gecastet nicht '#' ist, wird die erste while-Schleife niemals beendet.
 
Z

zco

Gast
vielen Dank für deine Antwort hab das fix geändert und siehe da es funktioniert. Nach nun gut 10 Stunden und ein paar Nervenzusammenbrüchen hab ich dank diesem Forum endlich mein kleines Programm fertig.

Vielen Dank :applaus: :applaus: :applaus:

Ps.: für die, die es interessiert, hier noch der geänderte Code
Code:
int iOut;
iOut = f.read();
while(iOut != -1){
    returnText = returnText + (char)iOut;
    iOut = f.read();	    		
}
 

Leroy42

Top Contributor
Noch ein Hinweis bzgl. Laufzeit
Code:
FileWriter w = new FileWriter(receiver+".dbws");
Wenn du das ganze in einen BufferedReader packst, erhöht sich die
Geschwindigkeit enorm, da nicht für jedes einzelne Zeichen das BS
ackern muß.
Code:
Writer w = new BufferedWriter(new FileWriter(receiver+".dbws"));
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Wandeln von Char Wert in Zeichen? Allgemeine Java-Themen 2
L char-Zeichen per Konsole einlesen Allgemeine Java-Themen 4
MarvinsDepression Unbekanntes Zeichen in fremden Code wirft Fragen auf Allgemeine Java-Themen 4
S Zeichen | in regex Allgemeine Java-Themen 8
_user_q JavaFX Robot alle Unicode-Zeichen schreiben lassen können Allgemeine Java-Themen 12
T Komische Zeichen im Zusammenhang mit Serializable interface Allgemeine Java-Themen 13
M Checkstyle 100 Zeichen pro Zeile Allgemeine Java-Themen 11
T Letztes Zeichen eines Strings enfernen Allgemeine Java-Themen 14
Master3000 Komisches Zeichen als Ausgabe in der Konsole Allgemeine Java-Themen 20
M Warum gibt es Unterschiedliche Kommentar Zeichen Allgemeine Java-Themen 15
N Überprüfung ob ein bestimmtes Zeichen <1 mal vorkommt Allgemeine Java-Themen 2
N Prüfen, ob ein String 2x das selbe Zeichen hat Allgemeine Java-Themen 10
G Übermittlung zusätzlicher ASCII-Zeichen bei Übertragung von Dateiinhalt mit Xmodem - JAVA Allgemeine Java-Themen 9
R Wie bekomme ich das Zeichen 'digit' an vorderster Stelle Allgemeine Java-Themen 4
S [Regex] Nur diese Zeichen beachten Allgemeine Java-Themen 1
Bluedaishi Zeile um zeichen erweitern Allgemeine Java-Themen 9
N Datei Zeilenweise Einlesen, Versteckte Zeichen Allgemeine Java-Themen 5
Xge Replace x Zeichen aus String Allgemeine Java-Themen 2
S Java Editor Bekomme bei der Code-Vervollständigung die Zeichen &#8203; Allgemeine Java-Themen 3
E Compiler-Fehler Unicode Zeichen einlesen Allgemeine Java-Themen 1
U Variablen Stringarrays mit wenig verschiedenen Zeichen effizienter speichern Allgemeine Java-Themen 10
T xls-Datei per Apache Commons CsvParser einlesen UTF-8 Zeichen russische Zeichen Allgemeine Java-Themen 2
AssELAss String jeweils nach x Zeichen Zeilenumbruch Allgemeine Java-Themen 1
DStrohma Input/Output KeyEvent nur verarbeiten wenn es ein "sichtbares" Zeichen ist? Allgemeine Java-Themen 1
B In Java String ein + Zeichen Allgemeine Java-Themen 4
AssELAss Zeilenumbruch immer nach bestimmtem Zeichen Allgemeine Java-Themen 1
J Anzahl der Zeichen bei Eingabe begrenzen Allgemeine Java-Themen 5
V Tastendruck für UTF-8 Zeichen emulieren Allgemeine Java-Themen 4
B BufferedWriter in InputStream oder Zeichen-Stream in Byte-Stream Allgemeine Java-Themen 5
C Hex Zeichen ersetzen durch leer Zeichen Allgemeine Java-Themen 5
R Besondere Zeichen in Dateinamen Allgemeine Java-Themen 4
B Alt-Griechisch Zeichen in Dateien Allgemeine Java-Themen 2
G AES Verschlüsselung nur bis 63 Zeichen Länge Allgemeine Java-Themen 2
M Fehlende Zeichen beim Drucken mit PDFBox Allgemeine Java-Themen 10
J String nur erste Zeichen vergleichen Allgemeine Java-Themen 6
C Variablen $-Zeichen in String ersetzen Allgemeine Java-Themen 3
S String Zeichen für Zeichen vergleichen Allgemeine Java-Themen 4
L Problem bei ausführbarer jar Datei mit Unicode-Zeichen Allgemeine Java-Themen 4
S String in Double - letztes Zeichen fehlt Allgemeine Java-Themen 4
A Erstes Zeichen im String "toUpperCase"n Allgemeine Java-Themen 11
A Umwandlung von Text/Zeichen in Polynome Allgemeine Java-Themen 8
cedi int Zahl in ein ASCII zeichen umwandeln und dieses in ein externes Textfenster schreiben Allgemeine Java-Themen 6
K String: alle X Zeichen Zeilenumbruch Allgemeine Java-Themen 3
M Nach Programmdurchlauf werden Zeichen falsch dargestellt + Anderes Verhalten unter Windows Allgemeine Java-Themen 6
Zettelkasten Aus String bestimmtes Zeichen herausfinden Allgemeine Java-Themen 19
M Asterisk in String ("Egal-Zeichen") Allgemeine Java-Themen 4
V Chinesische Zeichen Escapen Allgemeine Java-Themen 4
I Teilweise falsche Darstellung jap. Zeichen im JEditorPane mit RTFEditorKit aus RTF-Datei Allgemeine Java-Themen 5
D Datei mit allen Ascii Zeichen Allgemeine Java-Themen 2
R Unsichtbare Zeichen Allgemeine Java-Themen 7
U Namen von Klassen haben $-Zeichen Allgemeine Java-Themen 5
P RegEx und $-Zeichen als Literal Allgemeine Java-Themen 5
neonfly Anzahl Zeichen pro Zeile auf der Konsole Allgemeine Java-Themen 8
C Strings zwischen 2 Zeichen auslesen Allgemeine Java-Themen 7
A Zeichen beim Eingeben in ein DOS-Fenster nicht anzeigen? Allgemeine Java-Themen 3
F Hexcode von ASCII Zeichen erhalten Allgemeine Java-Themen 2
J Mit Scanner-Klasse eine Datei zeilenweise einlesen und nur bestimmte Zeichen abfragen Allgemeine Java-Themen 11
V Dateien mit &-Zeichen im Namen öffnen Allgemeine Java-Themen 13
N String in einzelne Zeichen zerlegen Allgemeine Java-Themen 8
M Problem mit Zeichen aus einer Datei auslesen Allgemeine Java-Themen 2
T Shapes vergleichen? Zeichen erkennen? Allgemeine Java-Themen 7
G String.replaceall - mehrere Zeichen durch eines ersetzen Allgemeine Java-Themen 5
G Tschechische Zeichen in XML-Antwort Allgemeine Java-Themen 22
J Encoding und Gewinnung von Zeichen aus der Hexa-Darstellung Allgemeine Java-Themen 6
N Xor Warum kommt Flasches Zeichen in Java Allgemeine Java-Themen 36
S Stringarray splitten an unbekanntem Zeichen Allgemeine Java-Themen 7
A Dezimalzahlen: Komma-Zeichen Allgemeine Java-Themen 4
T Einzelnes Zeichen von der Tastatur einlesen, aber ohne Enter Allgemeine Java-Themen 4
S Was bedeutet dieser Zeichen Allgemeine Java-Themen 4
E Wie Zeichen eingeben mit Klasse Scanner? Allgemeine Java-Themen 5
S Zeichen, dass Programm noch läuft Allgemeine Java-Themen 3
M Anwendung nur einmal starten / Zeichen in String zählen Allgemeine Java-Themen 7
T [Regex] Zeichen ausschließen Allgemeine Java-Themen 8
Luma Unicode Steuerzeichen von druckbaren Zeichen trennen Allgemeine Java-Themen 10
M JTable: Anzahl Zeichen bei Eingabe Allgemeine Java-Themen 2
G String parsen und Problem mit escaped zeichen Allgemeine Java-Themen 4
Z Letztes zeichen eines strings löschen Allgemeine Java-Themen 3
A bestimmte Zeichen aus einem String auslesen Allgemeine Java-Themen 2
L unicode-zeichen in ein txt-File schreiben Allgemeine Java-Themen 3
J Problem mit nichtlateinischen Zeichen Allgemeine Java-Themen 2
B String + Zeilenumbruch nach X-Zeichen Allgemeine Java-Themen 4
M Nach 4 Zeichen Fokus ändern Allgemeine Java-Themen 2
oliver1974 Wie ResourceBundles mit Unicode Zeichen korrekt einlesen? Allgemeine Java-Themen 4
E Alarm ausgeben (ASCII Zeichen 7) über Lautsprecher Allgemeine Java-Themen 11
G Alle Zeichen des Alphabets ausgeben Allgemeine Java-Themen 4
K String-Objekt mit zig tausend Zeichen Allgemeine Java-Themen 12
T Muster/Zeichen/Texterkennung auf einem Image Allgemeine Java-Themen 9
Y Zeichen verschiedenfarbig in einer JTextPane darstellen Allgemeine Java-Themen 17
P Regulärer Ausdruck um sich wiederholende Zeichen zu finden. Allgemeine Java-Themen 9
O Split methode tut bei Zeichen "\", "\\" Allgemeine Java-Themen 7
H Unicode Darstellung in Java, spezielles Zeichen gesucht Allgemeine Java-Themen 4
S Unicode-Zeichen erstellen/ Kodierung Allgemeine Java-Themen 4
J RegEx: "wenn zeichen folgen ersetze x mit y, sonst mit Allgemeine Java-Themen 2
I $ zeichen im class-namen Allgemeine Java-Themen 4
S ￾ Zeichen umwandeln in ü per .replace(); Allgemeine Java-Themen 6
N Zeilenumbruch in String nach jeweils x Zeichen einfügen? Allgemeine Java-Themen 6
D gewisse Zeichen sind nach dem entschlüsseln anders Allgemeine Java-Themen 2
G subString() aber nicht auf Länge sondern auf Zeichen Allgemeine Java-Themen 3
L Hex --> Dezimal --> Zeichen Allgemeine Java-Themen 7
M Codepage Problem (Vertauscht Zeichen beim Lesen aus Datei) Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben