Как юникод в текст конвертировать



  • @Fox Сейчас попробовал содержимое переменной Бас запихать в функцию и она нормально отработала, а когда переменную ставлю, то нефига. И в примерном скрипте аналогично.



  • потому что там %



  • @forall said in Как юникод в текст конвертировать:

    потому что там %

    Причем тут %?
    Если вот так работает:

    [[DECODE]] = decodeURIComponent('\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 
    \u043F\u043E\u0438\u0441\u043A')
    

    а вот так нет:

    [[DECODE]] ='\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u043F\u043E\u0438\u0441\u043A'
    [TEXT]] = decodeURIComponent( [[DECODE]] )


  • @Denis_krsk

    Заменить \ на %
    

    потом

    unescape([[REPLACE_RESULT]])
    

    У меня так))))



  • @forall said in Как юникод в текст конвертировать:

    unescape

    Вот так пойдет:) unescape() работает.



  • @Denis_krsk said in Как юникод в текст конвертировать:

    @forall said in Как юникод в текст конвертировать:

    потому что там %

    Причем тут %?
    Если вот так работает:

    [[DECODE]] = decodeURIComponent('\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 
    \u043F\u043E\u0438\u0441\u043A')
    

    а вот так нет:

    [[DECODE]] ='\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u043F\u043E\u0438\u0441\u043A'
    [TEXT]] = decodeURIComponent( [[DECODE]] )
    

    У тебя не хватает квадратной скобки в переменной [[TEXT]].

    [[DECODE]] ='\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u043F\u043E\u0438\u0441\u043A'
    [[TEXT]] = decodeURIComponent([[DECODE]])
    

    Всё прекрасно работает. Вот проект.



  • @Fox said in Как юникод в текст конвертировать:

    @Denis_krsk said in Как юникод в текст конвертировать:

    @forall said in Как юникод в текст конвертировать:

    потому что там %

    Причем тут %?
    Если вот так работает:

    [[DECODE]] = decodeURIComponent('\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 
    \u043F\u043E\u0438\u0441\u043A')
    

    а вот так нет:

    [[DECODE]] ='\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u043F\u043E\u0438\u0441\u043A'
    [TEXT]] = decodeURIComponent( [[DECODE]] )
    

    У тебя не хватает квадратной скобки в переменной [[TEXT]].

    [[DECODE]] ='\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u043F\u043E\u0438\u0441\u043A'
    [[TEXT]] = decodeURIComponent([[DECODE]])
    

    Всё прекрасно работает. Вот проект.

    Скобка есть, это тут потерял. Ты попробуй переменную установить не в "выполнить код", а в Басе и работать не будет :(



  • @Denis_krsk Да вы прикалываетесь?
    Установить переменную >> выполнить код >> лог
    И всё работает. Откройте проект, какой из способов у вас не сработал?



  • @Fox Пардон. Я не знал, что строку надо в виде выражения задавать. Так работает



  • Подводный камень блин. Когда в JS пишешь, то задаешь как строку. А тут надо, как выражение! Хотя она вроде строка.



  • @Denis_krsk Если посмотрите скрипт в текстовом варианте, то установить переменную выглядит так:

    section_start("", 370704733)!
       /*Dat:eyJzIjoic2V0dmFyaWFibGUiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiU2V0VmFyaWFibGVOYW1lIiwidHlwZSI6InZhciIsImRhdGEiOiJURVNUIn0seyJpZCI6IlNldFZhcmlhYmxlVmFsdWUiLCJ0eXBlIjoiY29uc3RyIiwiZGF0YSI6IidcXHUwNDE4XFx1MDQ0MVxcdTA0M0ZcXHUwNDNFXFx1MDQzQlxcdTA0NENcXHUwNDM3XFx1MDQ0M1xcdTA0MzkgXFx1MDQzRlxcdTA0M0VcXHUwNDM4XFx1MDQ0MVxcdTA0M0EnIiwiY2xhc3MiOiJleHByZXNzaW9uIn1dfQ==*/
       VAR_TEST = '\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u043F\u043E\u0438\u0441\u043A'
       section_end()!
    

    А в виде строки уже вот так:

       section_start("", 515336570)!
       /*Dat:eyJzIjoic2V0dmFyaWFibGUiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiU2V0VmFyaWFibGVOYW1lIiwidHlwZSI6InZhciIsImRhdGEiOiJURVNUIn0seyJpZCI6IlNldFZhcmlhYmxlVmFsdWUiLCJ0eXBlIjoiY29uc3RyIiwiZGF0YSI6IlxcdTA0MThcXHUwNDQxXFx1MDQzRlxcdTA0M0VcXHUwNDNCXFx1MDQ0Q1xcdTA0MzdcXHUwNDQzXFx1MDQzOSBcXHUwNDNGXFx1MDQzRVxcdTA0MzhcXHUwNDQxXFx1MDQzQSIsImNsYXNzIjoic3RyaW5nIn1dfQ==*/
       VAR_TEST = "\u005cu0418\u005cu0441\u005cu043F\u005cu043E\u005cu043B\u005cu044C\u005cu0437\u005cu0443\u005cu0439 \u005cu043F\u005cu043E\u005cu0438\u005cu0441\u005cu043A"
       section_end()!
    

    BAS сохраняет обратный слеш в юникоде, вот и выходит, что decodeURIComponent не срабатывает.


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.