Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как перекодировать UTF-8 в Win-1251 без потери символов? / 1 сообщений из 1, страница 1 из 1
06.11.2010, 17:31
    #36940290
ak787
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перекодировать UTF-8 в Win-1251 без потери символов?
код с форума пропускает русскую букву "P" (именно заглавную)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Public Declare Function MultiByteToWideCharA Lib "kernel32.dll" Alias "MultiByteToWideChar" ( _
    ByVal CodePage As Long, ByVal dwFlags As Long, _
    ByVal lpMultiByteStr As String, ByVal cchMultiByte As Long, _
    ByVal lpWideCharStr As Long, ByVal cchWideChar As Long) As Long

Public Function DecodeUTF8(ByVal sInput As String) As String
Dim iStrSize As Long, lMaxSize As Long, str1 As String
Dim p As Long
Dim str2 As String
    If Len(sInput) =  0  Then Exit Function
    lMaxSize = Len(sInput)
    str1 = String$(lMaxSize,  0 &)
    iStrSize = MultiByteToWideCharA( 65001 ,  0 &, sInput, &HFFFF, StrPtr(str1), lMaxSize)
    If iStrSize >  0  Then
        DecodeUTF8 = Left$(str1, iStrSize -  1 )
    Else
        DecodeUTF8 = sInput
    End If
End Function

подскажите, есть ли реально работающий код, который не пропускает символы при кодировке из UTF-8 в Win-1251?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как перекодировать UTF-8 в Win-1251 без потери символов? / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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