Auf / Zeichen (unter)suchen

Status
Nicht offen für weitere Antworten.

RBS2002

Aktives Mitglied
Hi,

ich habe ein großes Problem. Ich habe bei meinem Programm eine Standard-Datei erstellt in dem ich die Pfade reinschreibe. Da java bei den Pfaden die / nicht mag (beim String muss man dies ja so angeben) muss ich diese auch als / hinschreiben. Jetzt habe ich das Problem das ich nicht auf dieses Zeichen hin kontrollieren kann (habe das ganze in einen String eingelesen und diesen in Tokens zerteilt, aber seht selbst):

Code:
public static void startlesen(String user) {

        String startfile = "C:/Dokumente und Einstellungen/" + user + "/Eigene Dateien" + "/ScantoPDF/";
        String temp = emailbearbeitung(startfile + "start.stp");
        System.out.println(temp);
        int signal = 0;
        int count1 = 0;
        int count2 = 0;
        int count3 = 0;

        StringTokenizer sttemp = new StringTokenizer(temp, "\n");
        String temp1 = new String();
        String temp2 = new String();
        String temp3 = new String();
        String temp4 = new String();
        String temp5 = new String();
        String temp6 = new String();

                    while(sttemp.hasMoreTokens()){
                if(signal==0){
                    temp1=sttemp.nextElement().toString();
                            
                    allgemeindir=allgemeindir.concat(temp1);
                
                if(signal==1){
                    temp2=sttemp.nextElement().toString();
                    i[b]f(temp2.startsWith("/")[/b]){
                        allgemeindir=allgemeindir.concat(temp1+user+temp2);
                    }
                }
                if(signal==2){
                    temp3=sttemp.nextElement().toString();
                    if(temp3.endsWith("/")){
                        ablagekorbdir=ablagekorbdir.concat(temp3);
                    }
                }
                if(signal==3){
                    temp4=sttemp.nextElement().toString();
                    if(temp4.startsWith("/")){
                        ablagekorbdir=ablagekorbdir.concat(temp3+user+temp4);
                    }
                }
                if(signal==4){
                    temp5=sttemp.nextElement().toString();
                    if(temp5.endsWith("/")){
                        scannerdir=scannerdir.concat(temp5);
                    }
                }
                if(signal==5){
                    temp6=sttemp.nextElement().toString();
                    if(temp6.startsWith("/")){
                        scannerdir=scannerdir.concat(temp5+user+temp6);
                    }
                }
                signal++;
                }
        System.out.println(allgemeindir);
    }}

Ich habe die entsprechende Stelle hervorgehoben (Der Code ist nicht vollständig, mir geht es jetzt nur um diesen Punkt). Der temp-String sieht dann so aus (wie die Datei die ich einlese).

C:\Dokumente und Einstellungen\
\Eigene Dateien/ScantoPDF\
C:\Dokumente und Einstellungen\
/Eigene Dateien\ScantoPDF\Ablagekorb\
C:/Dokumente und Einstellungen\
\Eigene Dateien\ScantoPDF\Scanner\

Wie gesagt, würde mich freuen wenn jemand einen Rat weiß, wenn ich statt \ / reinschreibe dann funktioniert natürlich alles, Java nimmt ihn dann aber nicht an (stellt ihn irgendwie laut Anzeige dann wieder um und schreibt dann das es ein Syntaxfehler wäre)

Am Ende soll z.B. das rauskommen
C:\Dokumente und Einstellungen\user\Eigene Dateien/ScantoPDF\

Also, vielen vielen Dank im Vorraus,
mfG RBS2002
 
G

Gelöschtes Mitglied 5909

Gast
String fs = System.getProperty("file.separator"); // oder File.fileSeparator;
File base = new File("dein basedir");
String file = "myfile.txt";

File newFile = new File(base.getAbsolutepath() + fs + file);

oder du baust dir ne methode die die fs immer überprüft und automatisch anhängt.

(deine genaua frage hab ich ehrlich gesagt nicht so ganz verstanden)
 
G

Guest

Gast
RBS2002 hat gesagt.:
Da java bei den Pfaden die / nicht mag (beim String muss man dies ja so angeben) muss ich diese auch als / hinschreiben.

Die Aussage ist falsch! Wenn du in einem String (in Java) das \ verwenden willst musst du einfach nur \\ schreiben und schon wird das Zeichen akzeptiert.
 

RBS2002

Aktives Mitglied
@Gast

Vielen Dank, du hast mir den Tag gerettet. Genau das war es, jetzt funktioniert alles. Wenn mein NB wieder Internet hat (sitze gerade auf Arbeit) werde ich den kompletten Code mal posten, vielleicht hat jemand das gleiche Problem ;)

@raiL

Auch dir erst einmal vielen Dank, das habe ich aber gar nicht gemeint 8deswegen auch die missglückte Hervorhebung mit und die anders beabsichtigt war. Mit dem Dateilesen hatte ich keine Probleme - nur mit der zeichenkontrolle. Und da habe ich gestern Stunden verbracht und mir ist das nicht eingefallen. Trotzdem auch dir vielen dank.
 

RBS2002

Aktives Mitglied
leider funktioniert das eigentliche Hauptziel immer noch nicht, irgendwie drehe ich mich derzeit um den Kreis. Ich habe praktisch das ganze so umgedreht, der String hat nun nicht mehr C:/... sondern C:\. Leider will java die Datei immer noch nicht finden, der FileReader schreibt wieder das ich einen Syntaxfehler habe. Was kann ich jetzt noch machen? Die Datei wird wenn ich sie explizit angebe gefunden, obwohl der gelesene und zugewiesene String genau mit dem übereinstimmt den ich selber eingesetzt habe.
 

RBS2002

Aktives Mitglied
glaube mir, habe ich schon selber probiert (zumindestens geht es mit dem Ausgangszustand nicht, aber Java muss ja später die Pfade selber in die Datei speichern wenn der User diese im Programm nach seinen Vorstellungen verändert, da wäre es dann eh problematisch). Ich habe festgestellt das java nachdem ich dem Fileobjekt den string zuteile die Zeichen, wenn es / ist, mit \ vertauscht, also war die \\ Abfrage für die Katz weil er es generell nicht macht. Dennoch stehe ich nach wie vor, vor dem Problem das kein Fileobjekt und kein Filereader den String annimmt obwohl er im / Fall sogar genauso aufgebaut ist wie die Strings die ich explizit mitgebe (habe bereits von 0 bis länge-1 einen Substring gemacht wo das letzte t beim txt gefehlt hat (bei 1 bis length() hat der Laufwerks-Buchstabe gefehlt, also müsste es im Prinzip genauso sein).
 

RBS2002

Aktives Mitglied
oh Mann, sorrey an alle, es war mein eigener Fehler. In der Datei waren Leerzeichen drin die ich zwar gemacht aber nicht bemerkt habe (muss beim löschen passiert sein). Habe (endlich mal in Ruhe, wenn man halb sechs aufstehen muss und bis 19 Uhr nicht richtig zuhause ist und nur ein paar Stunden Zeit für sich hat kann das passieren, also seid bitte nachsichtig :D) heute, nachdem mir bei der Fahrt nach Hause die Vergleichsmethode von Strings eingefallen ist, dies gemacht und Java hat natürlich gemerkt das die Strings nicht gleich sind. So habe ich mir Zeichen für Zeichen ausgeben lassen (von den gelesenen String und dem explizit angegebenen) und dabei bemerkt das er Leerzeichen mit reingeschoben hat (beim gelesenen). So habe ich die Datei untersucht und natürlich den Fehler gefunden. Werde dann morgen mal das gesamte betreffende Script hier online stellen damit es andere verwenden können. Ansonsten noch vielen Dank an alle die mir weitergeholfen haben :toll::toll::toll:.

Mit freundlichen Grüßen,
RBS2002
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Quelltext mit komischen griechischen Zeichen Java Basics - Anfänger-Themen 4
T or zeichen Java Basics - Anfänger-Themen 2
L 4 stelliges Passwort aus bestimmten Zeichen. Java Basics - Anfänger-Themen 27
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
I Eindeutiger String mit maximaler Anzahl an Zeichen Java Basics - Anfänger-Themen 11
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
S Was bedeutet das Zeichen := Java Basics - Anfänger-Themen 9
K Wie String prüfen ob drei mal das gleiche Zeichen vorkommt? Java Basics - Anfänger-Themen 7
L Zeichen an bestimmter Stelle auslesen Java Basics - Anfänger-Themen 4
S Arrayausgabe und nur einmal ein Zeichen davor Java Basics - Anfänger-Themen 12
johnboyne Java Zeichen Trennen Java Basics - Anfänger-Themen 1
T Zeichen im String verschiebe Java Basics - Anfänger-Themen 17
J Verschieben von Buchstaben in einem String um vorgegebene Anzahl von Zeichen innerhalb eines weiteren String Java Basics - Anfänger-Themen 12
Tino1993 for-Schleife, die eine vorgegebene Anzahl von Zeichen ausgibt Java Basics - Anfänger-Themen 3
pkm Regexproblem - Wie kann ich zwei oder mehr beliebige Zeichen matchen? Java Basics - Anfänger-Themen 7
marcooooo Separator zwischen allen Zeichen eines Strings einfügen Java Basics - Anfänger-Themen 29
Dimax Erste Schritte String replace alle Zeichen Java Basics - Anfänger-Themen 10
M Regex-Ausdruck: Alle Zeichen bis auf ein bestimmtes erlauben (p{L}) Java Basics - Anfänger-Themen 5
M Regex für bestimmte Wörter bzw. bestimmte Zeichen erstellen Java Basics - Anfänger-Themen 5
F RegEx "+" nur als Zeichen, nicht als Operator oder Sonstiges Java Basics - Anfänger-Themen 2
J Zeichen im String zählen Java Basics - Anfänger-Themen 3
J ObjectOutputStream writeChars, komische Zeichen nur in 1. Zeile Java Basics - Anfänger-Themen 2
H Fehlerausgabe (Ungewollte Zeichen) Java Basics - Anfänger-Themen 1
R Komische Zeichen in Java Java Basics - Anfänger-Themen 5
N Zeichen in einem Textfeld zählen und hinterlegen Java Basics - Anfänger-Themen 6
W Einfachen, ein beliebiges Zeichen oft erkennenden Regex Parser selber schreiben - wie vorgehen? Java Basics - Anfänger-Themen 12
J Vorkommen von Zeichen Java Basics - Anfänger-Themen 44
H Verschiebung von Zeichen Java Basics - Anfänger-Themen 18
O String von vorne nach hinten an einem Zeichen Java Basics - Anfänger-Themen 10
S char auf buchstabe/zeichen prüfen Java Basics - Anfänger-Themen 1
P Zeichenkette Zeichen ausschlißen funktioniert nicht richtig Java Basics - Anfänger-Themen 9
G Teil(e) eines Strings entfernen wenn spezifische Zeichen (< & >) vorkommen Java Basics - Anfänger-Themen 5
L String auf bestimmte zeichen untersuchen Java Basics - Anfänger-Themen 9
D gebe string zurück mit von bis bestimmtes Zeichen Java Basics - Anfänger-Themen 4
L Rekursion größtes Zeichen Java Basics - Anfänger-Themen 8
S Zeichen zählen kopierter Text Java Basics - Anfänger-Themen 6
Y String auf allgemein Zeichen untersuchen Java Basics - Anfänger-Themen 3
S String trennen nach beliebigen Zeichen Java Basics - Anfänger-Themen 3
C Zeichen im String bis zu bestimmter Stelle entfernen Java Basics - Anfänger-Themen 6
S Java Text splitten mit Tabs, Zeilen, Zeichen und Klammern. Java Basics - Anfänger-Themen 6
H Zeichen im algorithmus Java Basics - Anfänger-Themen 4
S Das Anführungszeichen(") Zeichen in einen String setzen Java Basics - Anfänger-Themen 1
G Zeichen suchen und Ausgeben. Java Basics - Anfänger-Themen 3
D Input/Output Split am Zeichen | Java Basics - Anfänger-Themen 2
B zeichen eines String mit der kleinsten Frequenz zurückgeben Java Basics - Anfänger-Themen 25
m0n4ch Variablen String auf ungültige Zeichen überprüfen Java Basics - Anfänger-Themen 13
Voreck String Zeichen für Zeichen auslesen Java Basics - Anfänger-Themen 9
R Zeichen in String vergleichen Java Basics - Anfänger-Themen 75
G Gibt es eine Methode die bei einem StringBuilder n mal das Zeichen c hinzufügt? Java Basics - Anfänger-Themen 6
D String Zeichen für Zeichen auslesen Java Basics - Anfänger-Themen 5
S Zeichen ab Suchstring einlesen Java Basics - Anfänger-Themen 6
Z char Array unbekanntes Zeichen selbstständig anlegen Java Basics - Anfänger-Themen 6
M Pipe-Zeichen "|" in Java Java Basics - Anfänger-Themen 1
S Zeichen von abgerundeten Rechtecken auf einem Applet Java Basics - Anfänger-Themen 5
R Anzahl von Zeichen in einem Char Array Java Basics - Anfänger-Themen 4
F StringBuilder: Zeilenumbruch nach x Zeichen ohne Worttrennung Java Basics - Anfänger-Themen 1
F Zeichen einer Datei zaehlen Java Basics - Anfänger-Themen 1
D Java doppelte Zahl/Zeichen in einem String entfernen Java Basics - Anfänger-Themen 6
W JTextField-Objekt liest Umlaute mit falschen Zeichen ein Java Basics - Anfänger-Themen 5
G zeichen einer Zeile löschen Java Basics - Anfänger-Themen 4
M problem mit diesem zeichen | Java Basics - Anfänger-Themen 10
N Bestimmte Zeichen eines Strings umwandeln Java Basics - Anfänger-Themen 4
W char-Array auf bestimmte Zeichen prüfen Java Basics - Anfänger-Themen 10
B lanterna einzelne Zeichen aus dem Terminal löschen Java Basics - Anfänger-Themen 0
S Input/Output Alphabet in eine Datei schreiben und Anzahl von Zeichen ausgeben. Java Basics - Anfänger-Themen 4
C Anzahl bestimmter Zeichen in einem String ausgeben Java Basics - Anfänger-Themen 7
I String abschneiden erste und letzte Zeichen Java Basics - Anfänger-Themen 3
X Wann schreibt man diese Syntax zeichen { } Java Basics - Anfänger-Themen 8
S Leerzeichen zwischen zwei Zeichen im String entfernen Java Basics - Anfänger-Themen 19
F Methoden split() - Mehrere Zeichen Java Basics - Anfänger-Themen 5
M Input/Output Text auf Fenster zeichen Java Basics - Anfänger-Themen 2
F In einem String nach einem String suchen und Zeichen danach ausgeben Java Basics - Anfänger-Themen 6
S Kleines Zeichen berechnen Java Basics - Anfänger-Themen 5
Q Erste Schritte Zeichen in String farblich hervorheben Java Basics - Anfänger-Themen 4
U markierten Text auf Zeichen zuvor/danach pruefen Java Basics - Anfänger-Themen 9
M Input/Output Zeichen on Konsole einlesen Java Basics - Anfänger-Themen 3
DStrohma Operatoren Kleiner-Zeichen in Größer-Zeichen ändern wenn boolen true? Java Basics - Anfänger-Themen 6
G Input/Output Verhalten BuffferedReader bei unvollständigen Zeichen Java Basics - Anfänger-Themen 1
T Auf jedes Zeichen eines Strings zugreifen? Java Basics - Anfänger-Themen 2
P String Zeichen zuweisen Java Basics - Anfänger-Themen 3
Q Erste Schritte In CharArrayWriter Zeichen an Stelle einfügen Java Basics - Anfänger-Themen 4
H Programm zum Zählen von Zeichen Java Basics - Anfänger-Themen 5
P Methode die String auf Zeichen überprüft Java Basics - Anfänger-Themen 2
A Seltsame Zeichen vor Clienteingabe Java Basics - Anfänger-Themen 5
M Prüfen, ob Zeichen eine Zahl ist Java Basics - Anfänger-Themen 3
T Wörter mit @ als Zeichen finden Java Basics - Anfänger-Themen 13
E Zeichen von Kommandozeilenparameter zählen Java Basics - Anfänger-Themen 6
W String von hinten alle drei Zeichen abschneiden und in umgekehrter Reihenfolge ausgeben. Java Basics - Anfänger-Themen 9
J String Ausgabe nicht-leerer Zeichen nicht korrekt Java Basics - Anfänger-Themen 10
H JEditorPane: ermitteln, ob Zeichen unterstrichen Java Basics - Anfänger-Themen 4
I Zeichen aus String ziehen Java Basics - Anfänger-Themen 3
X Klassen mit Suffix hinter @-Zeichen Java Basics - Anfänger-Themen 7
J Zeichen aus String Array lesen Java Basics - Anfänger-Themen 13
P Input/Output Textdatei einlesen - 1. Zeichen fehlt Java Basics - Anfänger-Themen 7
S Zeichen von Telnet lesen Java Basics - Anfänger-Themen 5
B Strings nur aus bestimmten Zeichen? Java Basics - Anfänger-Themen 4
T String - kleinstes Zeichen bestimmen Java Basics - Anfänger-Themen 3
M Einzelne Zeilen nach Zeichen auslesen Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben