powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / FAQ: кодировка
1 сообщений из 1, страница 1 из 1
FAQ: кодировка
    #32871938
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ключевые слова для поиска:
кодировка, перекодировка, кодирование, кодовая страница, КОИ


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
Option Compare Database
Option Explicit
Const Win =  1 , Dos =  2 , Koi =  3 , Iso =  5 

Public Function Recode(Char As String, Src, Dest) As String
Const wDos As String = "°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧрЩЪЫЬЭЮЯтуфхцчшщсыьэюяШъЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—˜™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Їабвгдежзийклмноп"
Const wIso As String = "°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧўЩЪЫЬЭЮЯтуфхцчшщсыьэюяШъ°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп"
Const wKoi As String = "ђ‘’Ѓ‡Іґ§¦µЎЁ®­¬ѓ„‰€†ЂЉЇ°«Ґ»ё± ѕ№є¶·Є©ў¤Ѕі…‚ЌЊЋЏ‹™˜“›џ—њћЈ–љќ”їј•бвчздецъйклмнопртуфхжигюыэящшьасБВЧЗДЕЦЪЙКЛМНОПРТУФХЖИГЮЫЭЯЩШЬАС"
Const wWin As String = "ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—˜™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"
Const NotRecodedChar As String = "?"

If Src = Dest Then
Recode = Char
Exit Function
End If

Dim t As String, i As Long, tt As String, a As Long, ss As String, ch As String
If Src = Win Then
t = Char
Else
Select Case Src
Case Koi: ss = wKoi
Case Dos: ss = wDos
Case Iso: ss = wIso
End Select
For i =  1  To Len(Char)
ch = Mid(Char, i,  1 )
If Asc(ch) <  128  Then
t = t & ch
Else
a = InStr( 1 , ss, ch, vbBinaryCompare)
If a =  0  Then
t = t & NotRecodedChar
Else
t = t & Mid$(wWin, a,  1 )
End If
End If
Next i
End If

If Dest = Win Then
Recode = t
Else
Select Case Dest
Case Koi: ss = wKoi
Case Dos: ss = wDos
Case Iso: ss = wIso
End Select
For i =  1  To Len(Char)
ch = Mid(t, i,  1 )
If Asc(ch) <  128  Then
tt = tt & ch
Else
a = InStr( 1 , wWin, ch, vbBinaryCompare)
If a =  0  Then
tt = tt & NotRecodedChar
Else
tt = tt & Mid$(ss, a,  1 )
End If
End If
Next i
Recode = tt
End If
End Function

оригинал для VB:
http://www.relib.com/forums/topic.asp?id=738282
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / FAQ: кодировка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]