Gewusst wie: ersetzen von '/' durch '\\' mit QString replace()?
Kann mir jemand helfen mit folgende? Angenommen, ich habe einen QString mit einem Dateipfad gespeichert, die einer bestimmten Datei, die ich ersetzen will, die /
(Schrägstriche) mit \\
(Doppel-Backslash) habe ich versucht:
mystring.replace("/","\\");
Aber es stellt nur ein einziges \
statt \\
String, bevor Ersatz: D:/myfiles/abc.zip
String nach der Ersetzung: D:\myfiles\abc.zip
Erwartete Zeichenfolge: D:\\myfiles\\abc.zip
Nicht wirklich sicher, aber soweit ich mich erinnere QFile/QFileInfo arbeiten gerne mit jedem Verzeichnis-Trennzeichen
Ich bin überrascht, dass diese tatsächlich kompiliert. Sind Sie nicht Flucht vor der Schließung
Aber adb muss '\\' :p ich mache eine automatisierte adb tool 🙂
Jemand bearbeitet meine post, das ist nicht der echte code, den ich eingegeben, wenn Sie diesen thread, mein code ist mystring.ersetzen("/", "\\");
Ich bin überrascht, dass diese tatsächlich kompiliert. Sind Sie nicht Flucht vor der Schließung
"
mit der Dritten `\`? Und welche Sprache verwenden Sie? C++?Aber adb muss '\\' :p ich mache eine automatisierte adb tool 🙂
Jemand bearbeitet meine post, das ist nicht der echte code, den ich eingegeben, wenn Sie diesen thread, mein code ist mystring.ersetzen("/", "\\");
InformationsquelleAutor Varun Chitre | 2012-08-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie verwenden:
Verwendet der compiler
\
als ein escape-Zeichen in strings (für Dinge wie\t
,\n
oder\r
), so dass\\
ist tatsächlich verwandelte sich in\
. Wenn Sie zwei umgekehrte Schrägstriche, den Sie brauchen, um zu starten mit vier.InformationsquelleAutor
Wenn Sie möchten, konvertieren von Pfaden in Windows-format, Sie können einfach verwenden QDir::toNativeSeparators():
InformationsquelleAutor
1) Warum wollen Sie, Sie zu ersetzen, ANMUTIGEN Schrägstriche Arbeit im Datei-Operationen auch (unabhängig vom OS).
2) Haben Sie versucht, die Dokumentation Lesen - zum Beispiel, warum
\\
Ergebnisse im einzelnen backslash?Sie haben könnte, Lesen Sie die Erklärung geschrieben von paxdiablo oben in die docs, die es eindeutig beschreibt den Einsatz von single `\` als escape-Zeichen. Jede escape-Zeichen entgeht EINEM folgenden Zeichen.
InformationsquelleAutor