Microsoft Access Unicode

Plaats reactie
ubremoved_539
Deel van't meubilair
Deel van't meubilair
Berichten: 29849
Lid geworden op: 28 okt 2003, 09:17
Uitgedeelde bedankjes: 446 keer
Bedankt: 1985 keer

Ik heb een Microsoft Access database gekregen, en deze bevat blijkbaar Unicode characters... echter ik weet niet in welke records, alléén dat het gaat om karakter \xC2\x8E.

Iemand een idee hoe ik een simple select kan schrijven om deze records te vinden. Een where veld like "*\xC2\x8E*" lukt niet ?
ubremoved_539
Deel van't meubilair
Deel van't meubilair
Berichten: 29849
Lid geworden op: 28 okt 2003, 09:17
Uitgedeelde bedankjes: 446 keer
Bedankt: 1985 keer

Niemand ? Dan maar zelf...

Eerst poging was via mid$ de karakters te bekijken van de string, echter mid$ is blijkbaar niet in staat Unicode strings te verwerken. Het resultaat is dat je een "?" (ascii 63) terug krijgt van mid$ voor een Unicode karakter.

Tweede poging was via een byte Buffer de karakters te bekijken van de string. Dit lukte wel (steeds twee bytes per karaketer waarvan de tweede verschillend van 0 is voor een Unicode karakter), met als resultaat volgende functie

Code: Selecteer alles

Function StripUnicode(s As String) As String

  Dim Buffer() As Byte
   
  Buffer = RTrim(s)
  For i = 0 To UBound(Buffer) Step 2
    n = Buffer(i)
    n1 = Buffer(i + 1)
    If n1 = 0 Then
      StripUnicode = StripUnicode + Chr(n)
    Else
      If (n = 142 And n1 = 194) Then  'A unicode character
        StripUnicode = StripUnicode + "a replacement character"
      End If
    End If
  Next

End Function
Plaats reactie

Terug naar “Development”