Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 15 из 15

Тема: Кодировка cp855

  1. #11
    Пользователь
    Регистрация
    13.01.2018
    Адрес
    Балабаново
    Сообщений
    17

    По умолчанию

    Уж не знаю, заводить ли новую тему или продолжить здесь?
    Пообщался с производителем принтеров, оказалось, что можно его перенастроить на кодировку UTF-8.
    Нашел документацию:
    https://ftp.owen.ru/CoDeSys3/98_Book...Package_ru.pdf
    Оказывается, что можно работать со строками в UTF-8.
    Поддерживают ли текущие версии прошивки эти библиотеки?

  2. #12
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,171

    По умолчанию

    Цитата Сообщение от NIMNUL Посмотреть сообщение
    Уж не знаю, заводить ли новую тему или продолжить здесь?
    Пообщался с производителем принтеров, оказалось, что можно его перенастроить на кодировку UTF-8.
    Нашел документацию:
    https://ftp.owen.ru/CoDeSys3/98_Book...Package_ru.pdf
    Оказывается, что можно работать со строками в UTF-8.
    Поддерживают ли текущие версии прошивки эти библиотеки?
    Нет, не поддерживаются.
    Но функции конвертации в UTF8 есть в библиотеке StringUtils.

    Можете связаться со мной через телеграм (в подписи) - поможем с конвертацией в любую кодировку.

  3. #13
    Пользователь
    Регистрация
    13.01.2018
    Адрес
    Балабаново
    Сообщений
    17

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение

    Можете связаться со мной через телеграм (в подписи) - поможем с конвертацией в любую кодировку.
    Спасибо большое за помощь через AnyDesk

  4. #14
    Пользователь
    Регистрация
    13.01.2018
    Адрес
    Балабаново
    Сообщений
    17

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Но функции конвертации в UTF8 есть в библиотеке StringUtils.
    Евгений, я допилил Вашу идею преобразования Unicod в UTF8. Посмотрите, правильно ли?
    Сначала, думал "склеивать" hex-коды в цикле, но потом нашёл решение через указатели.

    VAR

    // Конвертация Unicode -> UTF8
    MyString: WSTRING;
    abyUtf8: ARRAY [1..99] OF BYTE;
    xConvert: BOOL;
    ptrString : POINTER TO STRING(99);
    outString : STRING;
    END_VAR

    PLC_PRG
    IF xConvert THEN

    STU.ConvertUTF16toUTF8(ADR(MyString), ADR(abyUtf8), SIZEOF(abyUtf8), FALSE);
    ptrString := ADR(abyUtf8);
    outString := ptrString^;
    xConvert := FALSE;

    END_IF

  5. #15
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,171

    По умолчанию

    Цитата Сообщение от NIMNUL Посмотреть сообщение
    Евгений, я допилил Вашу идею преобразования Unicod в UTF8. Посмотрите, правильно ли?
    Сначала, думал "склеивать" hex-коды в цикле, но потом нашёл решение через указатели.

    VAR

    // Конвертация Unicode -> UTF8
    MyString: WSTRING;
    abyUtf8: ARRAY [1..99] OF BYTE;
    xConvert: BOOL;
    ptrString : POINTER TO STRING(99);
    outString : STRING;
    END_VAR

    PLC_PRG
    IF xConvert THEN

    STU.ConvertUTF16toUTF8(ADR(MyString), ADR(abyUtf8), SIZEOF(abyUtf8), FALSE);
    ptrString := ADR(abyUtf8);
    outString := ptrString^;
    xConvert := FALSE;

    END_IF
    Чуть проще (и корректнее):

    Код:
    IF xConvert THEN
    	
    	STU.ConvertUTF16toUTF8(ADR(MyString), ADR(outString), SIZEOF(outString), FALSE);
    
    END_IF

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Кодировка строки из MS SQL.
    от Алексей Владимирович Т в разделе СПК1хх [М01]
    Ответов: 5
    Последнее сообщение: 05.09.2023, 16:00
  2. Импорт списка тревог кодировка
    от AlexZ в разделе СПК1хх [М01]
    Ответов: 3
    Последнее сообщение: 31.03.2022, 13:25
  3. Кодировка в CoDeSys
    от Пьер в разделе ПЛК1хх
    Ответов: 13
    Последнее сообщение: 01.12.2017, 14:55
  4. Портится кодировка
    от _Pavel_ в разделе Master SCADA 3
    Ответов: 3
    Последнее сообщение: 15.12.2012, 20:36

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •