utf-8 und Strings

Status
Nicht offen für weitere Antworten.

muemmel_0811

Bekanntes Mitglied
Hallo zusammen,

entschuldigt bitte, dass ich diese Frage wohl zum x-ten Mal stelle, aber ich kapier's einfach nicht :cry:

Alles was ich will, ist aus
Code:
einf%C3%BChrung+java
ein
Code:
einführung+java
machen - und ich kapier's einfach nicht.
Wäre jemand so nett und würde sich erbarmen mir das zu erklären.

Danke und Grüße,
muemmel_0811
 

Illuminatus0301

Aktives Mitglied
was meinst du? hast du den Code
Code:
System.out.println("einführung+java");
und bekommst dann "einf%C3%BChrung+java" in der Konsole raus? Dann musst du das encoding der Konsole umstellen:
Code:
System.setOut( // Mit dieser Methode kannst du den Standart-Outputstream des Systems (normalerweise die Konsole) verändern
    new PrintStream( // Hier erzeugst du einen neuen Outputstream (bzw. PrintStream)
        System.out, // Du möchtest ja, dass die Ausgaben weiter in der Konsole angezeigt werden
        true, // soll der Ausgabepuffer automatisch geleert werden? (sonst musst du "flush()" aufrufen)
        "cp850")); // mit diesem Encoding werden Umlaute wie ä, ö, ü, ß richtig angezeigt

Ich hoffe, dass das dein Problem ist oder dass du dir die Lösung deines Problems hierdurch ableiten kannst. Sonst präzisiere es bitte noch ein bischen genauer.
 

muemmel_0811

Bekanntes Mitglied
Guten Morgen,

entschuldigt die etwas ungenauen Angaben...
Also, ich habe kein Problem mit der Konsolenausgabe. Ich habe vielmehr folgendes:
ich lese aus den Referer-Logs unseres Servers die Google-Such-URLs aus und hab dann eben irgendwann nur noch ein einf%C3%BChrung+java da stehen. Und aus diesem utf-8-kodierten irgendwas würde ich gerne einführung+java machen, ohne dass ich mit irgendwelchen replace-Methoden jedes Sonderzeichen einzeln ersetzen muss oder ähnlichem.

Ich hoffe, das war jetzt ausführlich genug?

Grüße,
muemmel_0811
 

Murray

Top Contributor
Das hat mit utf-8 nichts zu tun, das ist URL-Encoding (also ein Mechanismus, der einen String in eine gültige URL verwandelt, auch wenn er Zeichen enthält, die in URLs nicht vorkommen dürfen).
Um das rückgängig zu machen, gibt es den java.net.URLDecoder.
 

muemmel_0811

Bekanntes Mitglied
super, vielen Dank - genau das hab ich gesucht :D

Aber nur mal so am Rande: mein Eclipse (3.3.0) behauptet folgendes:
"The methode decode(String) from the type URLDecoder is deprecated"
Ich hab hier noch Java 5 im Einsatz - gibt's das bei der 6er-Version etwa schon gar nicht mehr? Und wie macht man das dann in Zukunft?

Grüße,
muemmel_0811
 

Murray

Top Contributor
Die Methode gibt es noch (und wird es wohl auch weiterhin geben; mit dem Abschneiden alter Zöpfe hat man es bei Sun nicht so eilig). Die "moderne" Variante der Methode verlangt als zweiten Parameter den Namen eines Charsets (z.B. "utf-8").
 

muemmel_0811

Bekanntes Mitglied
jetzt muss ich doch noch mal fragen - sorry.
Folgendes hab ich jetzt an funktionierendem Code.
Code:
     BufferedReader rein = new BufferedReader(new FileReader(datei));
			String zeile;
			String pfad = datei.replace(".log", "-single-keys.txt");
			try {
				while((zeile = rein.readLine()) != null) {
					Pattern pa = Pattern.compile(suMu, Pattern.CASE_INSENSITIVE);
					Matcher ma = pa.matcher(zeile);
					if(ma.find() == true) {
						Pattern pa2 = Pattern.compile(suMu2, Pattern.CASE_INSENSITIVE);
						Matcher ma2 = pa2.matcher(zeile);
						if(ma2.find() == true) {
							z++;
							txStat.setText("Gefunden: " + z);
							String tmp1 = ma2.group().replace("&q=", "");
							String tmp2 = tmp1.replace("?q=", "");
							String tmp3 = tmp2.replace("&", "");
							String res = URLDecoder.decode(tmp3);
							File neu = new File(pfad);
							BufferedWriter raus = new BufferedWriter(new FileWriter(neu, true));
							raus.write(res);
							raus.newLine();
							raus.close();
						}
					}
				}
			}
Der URL-Decoder funktioniert auch soweit ganz gut, aber nur solange ich kleine Dateien bearbeite, also bspw. Testdateien mit 20 / 30 Einträgen.
Wenn ich dieses Programm dann über das 800 MB-Referrer-File jage, dann tut es auch alles, was es soll, nur nicht die Decodierung des Strings. In der Datei kommt dann im Prinzip der Wert von tmp3 an. Wie kann ich das anders lösen, damit der dekodierte Wert in der Datei landet?

Grüße,
muemmel_0811
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Gleichzeitiges ersetzen mehrerer Strings Java Basics - Anfänger-Themen 7
R Datentypen Das Verhalten von Strings als Datentypen Java Basics - Anfänger-Themen 7
N Nachkommastellen von Strings Java Basics - Anfänger-Themen 3
T Strings unveränderlich???? Java Basics - Anfänger-Themen 22
B Alle Strings bis zu einer Maimallänge aufzählen, die Bedingung erfüllen Java Basics - Anfänger-Themen 13
S Die durchschnittliche Länge der Strings Java Basics - Anfänger-Themen 11
M Operatoren Strings mit Vergleichsoperatoren, funktioniert das? Java Basics - Anfänger-Themen 9
S Variablen Letzte Zeile eines Strings entfernen Java Basics - Anfänger-Themen 1
D Strings aus Excel-Datei einlesen Java Basics - Anfänger-Themen 2
P9cman Tipps für Rekursive Aufgaben mit Strings oder allgemein Java Basics - Anfänger-Themen 2
sserio StringBuilder und Strings Java Basics - Anfänger-Themen 8
J Größe eines Strings in Pixel Java Basics - Anfänger-Themen 18
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
B Konkatenieren eines Strings und inkremtierenden Zahl zu einer INT Variablen Java Basics - Anfänger-Themen 7
N Strings verpflechten Java Basics - Anfänger-Themen 4
G Strings auf Gleichheit prüfen - Aufgabe vom Prof. Java Basics - Anfänger-Themen 5
A 2 Strings vergleichen in einer methode wenn man mit Globalen variablen arbeitet Java Basics - Anfänger-Themen 12
L Strings aneinanderhängen Java Basics - Anfänger-Themen 2
M Strings vergleichen Java Basics - Anfänger-Themen 10
Nerdinfekt BMI Rechner, fehler beim Zurückgeben des Strings? Java Basics - Anfänger-Themen 2
U Problem mit dem initialisieren meines Strings in einer Schleife Java Basics - Anfänger-Themen 5
S 2 Strings mit Equals vergleichen Java Basics - Anfänger-Themen 11
Q Besitzen zwei Strings identische Buchstaben, nur in anderer Reihenfolge? Java Basics - Anfänger-Themen 10
marcooooo Separator zwischen allen Zeichen eines Strings einfügen Java Basics - Anfänger-Themen 29
C Ternärer Operator mit Strings Java Basics - Anfänger-Themen 3
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
P Verketten, Aneinanderreihen von Strings Java Basics - Anfänger-Themen 2
M Strings mit gerader und ungerader Länge ausgeben Java Basics - Anfänger-Themen 10
J Alle Werte eines Strings zusammen addieren Java Basics - Anfänger-Themen 15
W Strings und das parsen Java Basics - Anfänger-Themen 8
D Frage zu Strings einer Exception Java Basics - Anfänger-Themen 4
D Vergleichen von Strings Java Basics - Anfänger-Themen 6
M Konkatenation von zwei Strings Java Basics - Anfänger-Themen 6
J Abbruchbedingung in Schleife/ Untersuchung von Strings Java Basics - Anfänger-Themen 2
S Buchstaben in Großbuchstaben (Strings) Java Basics - Anfänger-Themen 5
X Anagramm mit Strings und Methode Java Basics - Anfänger-Themen 53
P geschachtelte Schleife mit Strings Java Basics - Anfänger-Themen 2
P Strings mit der Axt zerteilen Java Basics - Anfänger-Themen 7
F Alle Zeichenkombinationen eines Strings iterativ herausfinden Java Basics - Anfänger-Themen 26
K Strings hochzählen Java Basics - Anfänger-Themen 20
J Strings untereinander in einer Liste vergleichen Java Basics - Anfänger-Themen 18
B Frage zu: String... strings -> Ungleiche Anzahl an Parameter? Java Basics - Anfänger-Themen 4
F Vergleiche mit charAt funktioniert bei Strings nicht, was tun? Java Basics - Anfänger-Themen 5
T Probleme mit Strings Java Basics - Anfänger-Themen 6
J Unveränderbarkeit von Strings Java Basics - Anfänger-Themen 3
O Klammerung bei Strings Java Basics - Anfänger-Themen 10
A Liste aus drei Strings erstellen Java Basics - Anfänger-Themen 5
N Zwei Strings mit "==" vergleichen warum TRUE Java Basics - Anfänger-Themen 2
G Teil(e) eines Strings entfernen wenn spezifische Zeichen (< & >) vorkommen Java Basics - Anfänger-Themen 5
D ergebnis.matches("[1-9]?[0-9].[0-9][0-9]?") ein teil eines größeren Strings Java Basics - Anfänger-Themen 12
J Breite eines Strings bestimmen Java Basics - Anfänger-Themen 4
D Zwei Strings sind gleich bei if aber nicht true Java Basics - Anfänger-Themen 2
F JList Elemente mit Strings vergleichen Java Basics - Anfänger-Themen 12
J Strings sind gleich werden aber ungleich ausgewertet Java Basics - Anfänger-Themen 2
N Vergleich von Strings schlägt fehl.. Java Basics - Anfänger-Themen 5
B 4 Strings, Anfangsbuchstaben muss unterschiedlich sein Java Basics - Anfänger-Themen 12
P Strings in String Array schreiben Java Basics - Anfänger-Themen 13
J Input/Output Strings aneinander reihen mit while schleife Java Basics - Anfänger-Themen 25
B mir nur die Gesamtzahl von einzigartigen Strings aus Array ausgeben lassen Java Basics - Anfänger-Themen 5
R Erste Schritte Sicheres einlesen eines Strings Java Basics - Anfänger-Themen 2
F Maximale Länge eines Strings Java Basics - Anfänger-Themen 5
J Best Practice Datum Differenz aus zwei Strings ermitteln Java Basics - Anfänger-Themen 8
Jinnai4 Strings ersetzen Java Basics - Anfänger-Themen 9
R Übergeben eines Array Strings an einen Spinner Java Basics - Anfänger-Themen 4
L Rekursiv zwei Strings vergleichen Java Basics - Anfänger-Themen 3
L Prüfe, ob die im String Array enthaltenen Strings aufsteigend sind. Java Basics - Anfänger-Themen 19
J Algorithmus - Strings auf eigene Reihenfolge miteinander vergleichen Java Basics - Anfänger-Themen 4
DaCrazyJavaExpert Variablen Zahlen aus Strings auslesen Java Basics - Anfänger-Themen 4
C 2 Strings Java Basics - Anfänger-Themen 15
T befehle unterschiedlicher anzahl an strings wiedergeben Java Basics - Anfänger-Themen 2
JavaNewbie2.0 Strings in andere Klassen importieren. Java Basics - Anfänger-Themen 2
D BlueJ Java: Strings voneinander trennen Java Basics - Anfänger-Themen 11
javaerd Wie kann ich Brute Force Methode mit Strings erweitern Java Basics - Anfänger-Themen 1
R Erste Schritte Strings "einrücken" Java Basics - Anfänger-Themen 3
Yamie ArrayList<Object> als Liste von Strings ausgeben? Java Basics - Anfänger-Themen 15
B gemeinsames Vorkommen der charactere von 2 Strings als String zurückgeben Java Basics - Anfänger-Themen 5
R Teilinhalt eines Strings testen Java Basics - Anfänger-Themen 10
H Erste Schritte JTree: Instanzen einer Klasse speichern oder Namen/Strings... Java Basics - Anfänger-Themen 4
L Werte von Strings ? Java Basics - Anfänger-Themen 1
L Strings und Arrays - Expand Java Basics - Anfänger-Themen 12
I Schachbrett aus beliebigen Strings erstellen Java Basics - Anfänger-Themen 3
Syncopated Pandemonium Verketten von Strings funktioniert nicht Java Basics - Anfänger-Themen 4
F Wahrscheinlichkeit von Strings Java Basics - Anfänger-Themen 3
MiMa Splitten eines Strings Java Basics - Anfänger-Themen 5
T Hashfunktion für Strings Java Basics - Anfänger-Themen 3
C Zeilenumbruch für langes Strings Java Basics - Anfänger-Themen 2
J Variablen Strings mit Zeilenumbrüchen in neues Array Element Java Basics - Anfänger-Themen 1
T Datentypen compareTo() u. equals() bei Strings Java Basics - Anfänger-Themen 3
H Strings vergleichen & sortieren Java Basics - Anfänger-Themen 20
H Erste Schritte Längstes Wort eines Strings herausfinden Java Basics - Anfänger-Themen 7
D Problem beim umwandeln eines Strings in eine Dzezimalzahl Java Basics - Anfänger-Themen 6
G Strings mit Scanner (nextLine) einlesen Java Basics - Anfänger-Themen 7
T Strings ersetzen mit \ Java Basics - Anfänger-Themen 10
K Strings bearbeiten Java Basics - Anfänger-Themen 14
N Bestimmte Zeichen eines Strings umwandeln Java Basics - Anfänger-Themen 4
L Java Strings Buchstaben vertauschen Java Basics - Anfänger-Themen 4
L Strings in einem JOptionPane farbig Java Basics - Anfänger-Themen 2
A Wie bekomme ich zwei Strings in eine ArrayList Java Basics - Anfänger-Themen 4
C Chars eines Strings mit for schleife rückwärts auslesen Java Basics - Anfänger-Themen 8
J Buchstabe (char) an zufällige Position eines Strings einfügen Java Basics - Anfänger-Themen 1

Ähnliche Java Themen


Oben