Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Описание: Конвертер формата UTF-8 в ANSI
Kibor
Отправлено: 17 Июля, 2020 - 16:35:41
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




utf8toansi конвертирует UTF-8 в ANSI.

Можно применять когда сайты отдают ответ в UTF-8 и вместо русских символов отображаются кракозябры.

utf8toansi имеет 3 вида использования.

1)
В виде параметра принимает string в формате UTF-8.
Возвращает string в формате ANSI
Может применяться одна переменная для источника и приемника.
CODE:
string T="Программируемый кликер";//Текст в формате UTF-8
string S=utf8toansi (T);//В S будет текст в формате ANSI
messagebox (S);


CODE:
string T="Программируемый кликер";//Текст в формате UTF-8
T=utf8toansi (T);//В T перезапишется текст в формате ANSI
messagebox (T);


2)
В виде параметра принимает указатель на массив char, в котором содержится текст в формате UTF-8. Должен заканчиваться нулем.
Возвращает string в формате ANSI
CODE:
char C[1000];//Массив C содержит текст в формате UTF-8
strcpy(#C[0], "Программируемый кликер");
string S=utf8toansi (#C[0]);//В S будет текст в формате ANSI
messagebox (S);


3)
В виде первого параметра принимает указатель на массив char, в который запишется текст в формате ANSI. Последний байт заполнится нулем.
В виде второго параметра принимает указатель на массив char, в котором содержится текст в формате UTF-8. Должен заканчиваться нулем.
Может применяться одна переменная для источника и приемника.
Возвращает размер текста в формате ANSI

CODE:
char C[1000];//Массив C содержит текст в формате UTF-8
strcpy(#C[0], "Программируемый кликер");
char E[1000];//Массив приемник текста в формате ANSI
int K=utf8toansi (#E[0], #C[0]);
messagebox (format(#E[0]));


CODE:
char C[1000];//Массив C содержит текст в формате UTF-8 и в который запишется ANSI
strcpy(#C[0], "Программируемый кликер");
int K=utf8toansi (#C[0], #C[0]);
messagebox (format(#C[0]));
 
 Top
Kibor
Отправлено: 18 Июля, 2020 - 19:42:00
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




Если планируется читать файл в формате UTF-8, то необходимо проверить наличие маркера BOM

CODE:
char C[1000];
int g=0;
if (fopen ("C:\utf.txt", "rb")!=0)//Файл в формате utf-8
{
g=freadb(#C[0], 1000);
fclose();
C[g]=0;
}

int N=0;
if (C[0]==239 && C[1]==187 && C[2]==191)N=3;//Если есть маркер BOM, начало текста будет с третьего символа.
string S=utf8toansi (#C[N]);


messagebox (S);
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« О программе Кибор »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by