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 ?
Microsoft Access Unicode
-
- Deel van't meubilair
- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 446 keer
- Bedankt: 1985 keer
-
- 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
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