ERLEDIGT
JA
JA
ANTWORTEN
6
6
ZUGRIFFE
552
552
EMPFEHLEN
-
Hallo Leute,
folgendes Problem: Ein Kunde erhält regelmässig kyrilische Emails mit eben so geschriebnen Dateianhängen.
Bei den Dateianhängen haben wir das Problem, dass der Text nicht erkennbar ist, daher haben wir beschlossen, dass bei solchen Attachment-Namen einfach unsere Beschriftung verwendet wird un diese ggf. vom Kunden nachträglich geändert werden kann.
Da wir etwas unter Zeitdruck stehen, wird die Holzhammer Methode verwendet: Zeichen auslesen und falls ein Rest an korrekten Zeichen übrig bleibt, diesen als Dateinamen verwenden, sonst eben unsere Beschriftung.
Ein Name sieht ca. so aus:
ontract ?-? 11? 21.10.09.rtf
Nun hätte ich einfach ein replace auf Fragezeichen, Punkte und Leerzeichen gemacht, doch die Fragezeichen werden nicht als solche erkannt.
Hier zum Beispiel die Ausgabe aus dem Direktfenster:
?dateiname
?ontract ?-? 11? 21.10.09.rtf
? Replace(dateiname, chr(63), "")
?ontract ?-? 11? 21.10.09.rtf
Habt ihr eine Idee, wie ich solche Zeichen rausfiltern kann? Habs über kompilierte Wege versucht, aber wirklich sauber arbeiten tut nichts.
-
16.03.10 16:00 #2
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Da auch dann wenn man diese Zeichen filtern kann nichts gescheites rauskommt, warum macht ihr euch dann die Arbeit. Benennt die Dateien doch einfach irgendwie anders und gut.
Ihr habt ein Problem gelöst und der Kunde kann die Dateien umbenennen wenn er will und ist auch zufrieden.
Wobei ich diese Woche ein ähnliches Problem in Excel hatte wo ein Zeilenumbruch nicht ausgeführt dafür aber angezeigt wurde und der sollte entfernt werden. Ich musste "AltGr + 0100" eingeben um nach dem Zeichen zu suchen und es zu ersetzen. So etwas in der Art wird es dann bei dir auch sein.
Vielleicht findest du ja hier etwas: http://mandalex.manderby.com/a/ascii.phpGeändert von tombe (16.03.10 um 16:05 Uhr)
Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
Code :
1 2
?Replace("ontract ?-? 11? 21.10.09.rtf", Chr(63), "") ontract - 11 21.10.09.rtf
Es funktioniert in Theorie. Die Frage ist, sind die ? wirklich ? (also chr(63)) oder stehen sie für ein komisches Zeichen?
Versuch mal das Zeichen zu kopieren und mit asc() den Wert herauszulesen. Ist es auch 63?---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
16.03.10 16:38 #4
Richtig, ich würde auch ganz stark vermuten, dass nicht um ein "echtes" Fragezeichen handelt, sondern einfach um einen system-spezifischen Platzhalter für ein nicht darstellbares Zeichen! In einer Java-Entwicklungsumgebung sind dies dann bspw. kleine Kästchen.
Also wird u. U. jedes der '?' einen anderen ASCII-Wert haben ....
Bleibt die Frage, ob das vorgeschlagene pauschale Umbenennen geht, wenn man hierdurch nicht den genauen Dateinamen kennt ....
Gruß
KlausEs ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
-
Ansonsten mit Regulären Ausdrücken
für VB6 sieht das etwa so aus
Code vb:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Public Function test() Const C_PATTERN = "[^0-9a-zA-Z._-]" Const C_REPLACE = "" Dim regEx As Object Dim value, pattern, replace As String 'Testfall value = "ontract ?-? 11? 21.10.09.rtf" 'RegExp Object anlegen Set regEx = CreateObject("vbscript.regexp") regEx.Global = True regEx.pattern = C_PATTERN test = regEx.replace(value, C_REPLACE) 'RegExp Objekt zerstören Set regEx = Nothing End Function
Geändert von Yaslaw (16.03.10 um 17:12 Uhr)
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
16.03.10 20:32 #6
Mir stellt sich die Frage, ob hier nicht eine andere Codierung (UTF, ISO, ...) sinnvoller wäre, wahrscheinlich wurden die Mails/Texte mit einer bestimmten, anderer als deiner Codierung gesendet und daher kommen die Darstellungsprobleme.
Der Doc!A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
B: Die Scrollbar da rechts ist dir schon mal aufgefallen?
-
Hallo Leute, vielen Dank für die vielen Antworten.
Im ersten Schritt werde ich es wohl über die Reg Exp lösen müssen. Vielleicht gibts noch was sauberes, die verschiedenen Kodierungen etc. durchlaufen lassen z.B., aber das muss hinten anstehen.
Ähnliche Themen
-
[IE 6] Transparente PNG's werden nicht dargestellt
Von alex130 im Forum CSSAntworten: 2Letzter Beitrag: 17.12.07, 09:12 -
Gemalte Linien werden nicht dargestellt
Von MEETyA im Forum JavaAntworten: 5Letzter Beitrag: 26.09.07, 15:58 -
Log-Files vom PHP Script werden direkt im Browser angezeigt - Manche jedoch nicht...
Von l0c4lh05t im Forum PHPAntworten: 4Letzter Beitrag: 27.12.06, 14:59 -
Nicht alle Ebenen werden in der Fla dargestellt....?
Von novalis777 im Forum Flash PlattformAntworten: 10Letzter Beitrag: 13.06.06, 17:56 -
Umlaute werden nicht dargestellt
Von Arndtinho im Forum PHPAntworten: 3Letzter Beitrag: 27.05.06, 14:13





Zitieren



Login





