Autor Thema: Umlautproblem bei Verknüpfungserzeung  (Gelesen 2873 mal)

Offline MartinG

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.802
  • Geschlecht: Männlich
Umlautproblem bei Verknüpfungserzeung
« am: 30.11.05 - 16:04:53 »
Ist immer etwas schwierig, wenn die Admins beginnen zu programmieren...

Folgendes Problem:

Ich habe eine Art "Formulardatenbank" in welcher Verknüpfungen auf "normale" Office-Dokumente auf dem Netzlaufwerk erzeugt werden sollen. Diese Verknüpfungen erzeuge ich durch nachfolgenden Code (welche ich bei notes.net kopiert habe). Der Code steckt in einer Maskenaktion:

Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim filename As String
   Dim TempFileName As String
   
   'Select the file.
   n$ = String$(1024, " ")
   f$ = "Word Documents|*.DOC|All Files|*.*|Acrobat Files|*.PDF|Excel Documents|*.XLS"
   ret% = NEMGetFile( 0, n$, f$, "Verknuepfung erzeugen")
   If ret% = 0 Then Exit Sub
   filename = Fulltrim(n$)
   
   'Get the working document.
   Set uidoc = workspace.CurrentDocument
   
   'Construct the html code.
   Call uidoc.FieldSetText( "Link", filename )
   s = uidoc.FieldGetText( "Link" )
   
   'Write the html code to a temp file.
   fileNum% = Freefile()
   TempFileName$ = "c:\LinkHotspotCreator.htm"
   Open TempFileName$ For Output As fileNum%
   Print #fileNum%, s
   Close fileNum%

Dieser Link wird dann in das Feld Link eingetragen und an anderer Stelle starte ich die Verknüpfung mit  @Command( [Execute]; Link )

Grundsätzlich funktioniert das ganze wunderbar, nur wenn im Dateinamen ein Umlaut enthalten ist, funktionierts nicht mehr. Dann sieht der Link wie folgt aus:

T:\Formulare\Žnderungsmeldung 1.doc

Gibts hier einen einfachen Trick/Workaround? HTML kennt ja eigentlich keine Umlaute...
Martin
Wir leben zwar alle unter dem gleichen Himmel, aber wir haben nicht den gleichen Horizont.
KONRAD ADENAUER

Driri

  • Gast
Re: Umlautproblem bei Verknüpfungserzeung
« Antwort #1 am: 30.11.05 - 16:12:48 »
Hi,

da gibts doch irgendwelche "Shortcuts" für die Sonderzeichen. Für nen Leerzeichen z.B. %20.

Die Liste hier hab ich mir mal irgendwo rauskopiert, ist nicht vollständig  :

Leerzeichen = %20
ö = %C3%B6
ü = %C3%A4
ä = %C3%BC

Du könntest mit einer vollständigen Liste wengistens die häufigsten Fälle erschlagen, indem Du einfach die Sonderzeichen austauschst.

Offline MartinG

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.802
  • Geschlecht: Männlich
Re: Umlautproblem bei Verknüpfungserzeung
« Antwort #2 am: 02.12.05 - 11:12:51 »
Hallo Ingo.

war jetzt leider etwas im Stress. Danke für den Tipp. Ich hatte gehofft, das geht vielleicht auch "globaler". Wir haben immer wieder auch Dateinamen mit anderem Zeichensatz und da knallts dann vermutlich wieder...

Gruss
Martin
Martin
Wir leben zwar alle unter dem gleichen Himmel, aber wir haben nicht den gleichen Horizont.
KONRAD ADENAUER

Glombi

  • Gast
Re: Umlautproblem bei Verknüpfungserzeung
« Antwort #3 am: 02.12.05 - 11:17:04 »
Es gibt eine @Formel  :)

ert eine Zeichenfolge in einem URL-sicheren Format.
Syntax
@URLEncode( Kodierformat ; Token )
Parameter
Kodierformat
Text. Der Typ der Kodierung, mit der Sie das Token übersetzen möchten. Sie können entweder ein Zeichenfolgenargument oder einen MIME-Zeichensatz angeben.
Zeichenfolgenargumente:
"Domino" -- Kodiert das Token in dem Standardzeichensatz, den der Lotus Domino 6 Web-Server verwendet. Dieses Schlüsselwort ist äquivalent zum MIME-Zeichensatz "UTF-8".
"Platform" -- Kodiert das Token in dem nativen Zeichensatz des aktuellen Betriebssystems.
MIME-Zeichensatz:
Konvertiert Nicht-ASCII-Zeichen in den angegebenen Zeichensatz und kodiert die Zeichen im %XX-Format, wobei XX für die hexadezimalen Ziffern steht, die den kodierten Wert repräsentieren. Beispiele:
"UTF-8" -- Steht für "UCS (Universal Character Set) Transformation Format 8". Eine ASCII-kompatible Mehr-Byte-Kodierung von Unicode und UCS.
"ISO-8859-1" -- Der ISO-Zeichensatz (ISO = International Standards Organization) für europäische Sprachen, 8 Bit, Ein-Byte-kodiert.
"Shift_JIS" -- Der Zeichensatz für die japanische Sprache.
Token
Text oder Textliste. URL-Zeichenfolgen, die kodiert werden sollen.
Rückgabewert
KodierteURLZeichenfolge
Text oder Textliste. Gibt die URL-Zeichenfolgen im angegebenen Format kodiert zurück.
Verwendung
Verwenden Sie @URLEncode nicht, um eine gesamte URL-Zeichenfolge zu kodieren. Beispiel: @URLEncode("Domino";"http://www.ibm.com/") würde die nicht mehr funktionsfähige URL "http%3A%2Fwww.ibm.com%2F" zurückgeben.

Beispiel:
1. Diese Formel gibt "Nach%20Datum" als kodierte URL zurück.
@URLEncode("Domino";"Nach Datum")

2.   Diese Formel gibt "Support%20%E0%20la%20client%E8le" als kodierte URL zurück.
@URLEncode("ISO-8859-1";"Support à la clientèle")


3.   Diese Formel gibt "Support%20%C3A0%20la%20client%C3%A8le" als kodierte URL zurück.
@URLEncode("UTF-8";"Support à la clientèle")

Andreas

Offline MartinG

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.802
  • Geschlecht: Männlich
Re: Umlautproblem bei Verknüpfungserzeung
« Antwort #4 am: 02.12.05 - 11:40:22 »
Das sieht aber gut aus...

Zitat
2.   Diese Formel gibt "Support%20%E0%20la%20client%E8le" als kodierte URL zurück.
@URLEncode("ISO-8859-1";"Support à la clientèle") 

Vielen Dank für den Tipp. Ich teste es nachher aus. Im Moment ist leider etwas Chaos hier...
Martin
Wir leben zwar alle unter dem gleichen Himmel, aber wir haben nicht den gleichen Horizont.
KONRAD ADENAUER

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz