Вверх ↑
Этот топик читают: Гость
Ответов: 253
Рейтинг: 0
#1: 2018-11-07 14:01:37 ЛС | профиль | цитата
Есть текст вот в таком формате "\u0421\u043c\u043e\u043b\u0435\u043d\u0441\u043a, 119 \u0443\u043b\u0438\u0446\u0430 \u041f\u043e\u043f\u043e\u0432\u0430" (без ковычек) Подскажите как можно раскодировать? На сайте(https://2cyr.com/decode/?lang=ru) предлагает много вариантов но очень странных типа UTF-16 в UTF-16 постфильтр:uurlencoded
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 4620
Рейтинг: 746
#2: 2018-11-07 14:29:14 ЛС | профиль | цитата
Это - UTF-16
1) Убираешь из строки символы \u, получаешь строку HEX (компонент Replace)
2) Преобразовываешь HEX в string (компонент StreamConvertor)
3) Преобразовываешь Unicode в ANSI (компонент Charset)
карма: 26

0
Ответов: 253
Рейтинг: 0
#3: 2018-11-07 14:45:22 ЛС | профиль | цитата
Спасибо большое, Вроде получилось но не своем корректно, в чем дело?

Add(Charset,5095033,539,98)
{
Type=9
InTypeUnicode=1
link(onCharset,16341813:doText,[])
}
Add(Replace,15811857,189,98)
{
SubStr="\u"
link(onReplace,8193786:doText,[])
link(Str,15472378:Text,[(195,88)(199,88)])
}
Add(StreamConvertor,5267800,399,98)
{
Mode=3
Symbol=""
link(onResult,11638288:doText,[])
link(Data,8193786:Text,[(405,86)(353,86)(353,142)(300,142)])
}
Add(Edit,16341813,588,98)
{
Left=15
Top=125
Width=370
Text=""
}
Add(Edit,15472378,193,46)
{
Left=10
Top=5
Width=370
Text="\u0421\u043c\u043e\u043b\u0435\u043d\u0441\u043a, 119 \u0443\u043b\u0438\u0446\u0430 \u041f\u043e\u043f\u043e\u0432\u0430"
}
Add(Button,2807318,140,98)
{
Left=10
Top=25
link(onClick,15811857:doReplace,[])
}
Add(Edit,8193786,294,98)
{
Left=10
Top=50
Width=370
link(onChange,5267800:doConvert,[])
}
Add(Edit,11638288,469,98)
{
Left=15
Top=75
Width=360
link(onChange,5095033:doCharset,[])
}

Почему не весь текст получается перевести. Оригинал выглядит вот так вот. "Смоленск, 119 улица попова"
карма: 0

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#4: 2018-11-07 14:53:17 ЛС | профиль | цитата
egorhay писал(а):
Почему не весь текст получается перевести

Потому, что текст блочный: кириллица -- кодированный UTF-16, не кириллица -- ANSI. Надо делать блочный декодер, те искать блоки кодирования /uXXXX и посимвольно переводить их в UTF-16, остальное не трогать

Редактировалось 1 раз(а), последний 2018-11-07 14:55:05
карма: 22

0
Ответов: 253
Рейтинг: 0
#5: 2018-11-07 15:56:48 ЛС | профиль | цитата
Спасибо большое, буду пробовать. Только как пока не представляю.
карма: 0

0
Ответов: 253
Рейтинг: 0
#6: 2018-11-07 17:53:55 ЛС | профиль | цитата
Короче решил эту проблему вот так вот, делюсь схемой.

Add(MainForm,2953706,210,84)
{
Width=416
Height=326
}
Add(Button,2807318,237,161)
{
Left=10
Top=50
Width=130
Caption="Раскодировать"
link(onClick,5648704:doWork1,[(282,167)(282,160)])
}
Add(RichEdit,11635840,350,154)
{
Left=15
Top=80
Width=365
Height=195
AddType=1
ScrollBars=3
}
Add(RichEdit,2385663,294,98)
{
Left=10
Top=5
Width=370
Height=35
Ctl3D=0
Strings=#121:\u0421\u043c\u043e\u043b\u0435\u043d\u0441\u043a, 119 \u0443\u043b\u0438\u0446\u0430 \u041f\u043e\u043f\u043e\u0432\u0430|
}
Add(MultiElement,5648704,294,154)
{
link(onEvent1,11635840:doAdd,[])
link(Data1,2385663:Text,[])
}
BEGIN_SDK
Add(EditMulti,830047,21,21)
{
EventCount=1
WorkCount=1
DataCount=1
Width=573
Height=487
link(doWork1,5877760:doCompare,[(31,27)(31,48)])
}
Add(Replace,4411391,98,42)
{
SubStr="\u0430"
DestStr="а"
link(onReplace,11723636:doReplace,[])
}
Add(Replace,11723636,140,42)
{
SubStr="\u0431"
DestStr="б"
link(onReplace,8450488:doReplace,[])
}
Add(Replace,8450488,182,42)
{
SubStr="\u0432"
DestStr="в"
link(onReplace,2136694:doReplace,[])
}
Add(Replace,2136694,224,42)
{
SubStr="\u0433"
DestStr="г"
link(onReplace,1832482:doReplace,[])
}
Add(Replace,1832482,266,42)
{
SubStr="\u0434"
DestStr="д"
link(onReplace,3137601:doReplace,[])
}
Add(Replace,3137601,308,42)
{
SubStr="\u0435"
DestStr="е"
link(onReplace,15475121:doReplace,[])
}
Add(Replace,15475121,350,42)
{
SubStr="\u0451"
DestStr="ё"
link(onReplace,1712898:doReplace,[])
}
Add(Replace,1712898,392,42)
{
SubStr="\u0436"
DestStr="ж"
link(onReplace,10378315:doReplace,[])
}
Add(Replace,10378315,434,42)
{
SubStr="\u0437"
DestStr="з"
link(onReplace,1001533:doReplace,[])
}
Add(Replace,1001533,476,42)
{
SubStr="\u0438"
DestStr="и"
link(onReplace,10942349:doReplace,[(520,48)(520,69)(86,69)(86,90)])
}
Add(Replace,10942349,98,84)
{
SubStr="\u0439"
DestStr="й"
link(onReplace,4527613:doReplace,[])
}
Add(Replace,4527613,140,84)
{
SubStr="\u043a"
DestStr="к"
link(onReplace,8107941:doReplace,[])
}
Add(Replace,8107941,182,84)
{
SubStr="\u043b"
DestStr="л"
link(onReplace,11329328:doReplace,[])
}
Add(Replace,11329328,224,84)
{
SubStr="\u043c"
DestStr="м"
link(onReplace,110904:doReplace,[])
}
Add(Replace,110904,266,84)
{
SubStr="\u043d"
DestStr="н"
link(onReplace,8411397:doReplace,[])
}
Add(Replace,8411397,308,84)
{
SubStr="\u043e"
DestStr="о"
link(onReplace,5436476:doReplace,[])
}
Add(Replace,5436476,350,84)
{
SubStr="\u043f"
DestStr="п"
link(onReplace,3764564:doReplace,[])
}
Add(Replace,3764564,392,84)
{
SubStr="\u044o"
DestStr="р"
link(onReplace,2046942:doReplace,[])
}
Add(Replace,2046942,434,84)
{
SubStr="\u0441"
DestStr="c"
link(onReplace,2440693:doReplace,[])
}
Add(Replace,2440693,476,84)
{
SubStr="\u0442"
DestStr="т"
link(onReplace,16259933:doReplace,[(520,90)(520,111)(86,111)(86,132)])
}
Add(Replace,16259933,98,126)
{
SubStr="\u0443"
DestStr="у"
link(onReplace,285991:doReplace,[])
}
Add(Replace,285991,140,126)
{
SubStr="\u0444"
DestStr="ф"
link(onReplace,2383852:doReplace,[])
}
Add(Replace,2383852,182,126)
{
SubStr="\u0445"
DestStr="х"
link(onReplace,10706666:doReplace,[])
}
Add(Replace,10706666,224,126)
{
SubStr="\u0446"
DestStr="ц"
link(onReplace,15703955:doReplace,[])
}
Add(Replace,15703955,266,126)
{
SubStr="\u0447"
DestStr="ч"
link(onReplace,1314660:doReplace,[])
}
Add(Replace,1314660,308,126)
{
SubStr="\u0448"
DestStr="ш"
link(onReplace,2239757:doReplace,[])
}
Add(Replace,2239757,350,126)
{
SubStr="\u0449"
DestStr="щ"
link(onReplace,12892734:doReplace,[])
}
Add(Replace,12892734,392,126)
{
SubStr="\u044a"
DestStr="ъ"
link(onReplace,3336362:doReplace,[])
}
Add(Replace,3336362,434,126)
{
SubStr="\u044b"
DestStr="ы"
link(onReplace,2932487:doReplace,[])
}
Add(Replace,2932487,476,126)
{
SubStr="\u044c"
DestStr="ь"
link(onReplace,2598445:doReplace,[(520,132)(520,153)(86,153)(86,174)])
}
Add(Replace,2598445,98,168)
{
SubStr="\u044d"
DestStr="э"
link(onReplace,11931279:doReplace,[])
}
Add(Replace,11931279,140,168)
{
SubStr="\u044e"
DestStr="ю"
link(onReplace,13246382:doReplace,[])
}
Add(Replace,13246382,182,168)
{
SubStr="\u044f"
DestStr="я"
link(onReplace,2534776:doReplace,[(226,174)(226,195)(86,195)(86,216)])
}
Add(Replace,2534776,98,210)
{
SubStr="\u0410"
DestStr="А"
link(onReplace,3110584:doReplace,[])
}
Add(Replace,3110584,140,210)
{
SubStr="\u0411"
DestStr="Б"
link(onReplace,473836:doReplace,[])
}
Add(Replace,473836,182,210)
{
SubStr="\u0412"
DestStr="В"
link(onReplace,9113008:doReplace,[])
}
Add(Replace,9113008,224,210)
{
SubStr="\u0413"
DestStr="Г"
link(onReplace,9973851:doReplace,[])
}
Add(Replace,9973851,266,210)
{
SubStr="\u0414"
DestStr="Д"
link(onReplace,5850582:doReplace,[])
}
Add(Replace,5850582,308,210)
{
SubStr="\u0415"
DestStr="Е"
link(onReplace,7227886:doReplace,[])
}
Add(Replace,7227886,350,210)
{
SubStr="\u0401"
DestStr="Ё"
link(onReplace,12724718:doReplace,[])
}
Add(Replace,12724718,392,210)
{
SubStr="\u0416"
DestStr="Ж"
link(onReplace,758657:doReplace,[])
}
Add(Replace,758657,434,210)
{
SubStr="\u0417"
DestStr="З"
link(onReplace,4793155:doReplace,[(471,216)(471,209)])
}
Add(Replace,4793155,476,203)
{
SubStr="\u0418"
DestStr="И"
link(onReplace,9896322:doReplace,[(520,209)(520,237)(86,237)(86,258)])
}
Add(Replace,9896322,98,252)
{
SubStr="\u0419"
DestStr="Й"
link(onReplace,3569154:doReplace,[])
}
Add(Replace,3569154,140,252)
{
SubStr="\u041a"
DestStr="К"
link(onReplace,876246:doReplace,[])
}
Add(Replace,876246,182,252)
{
SubStr="\u041b"
DestStr="Л"
link(onReplace,3368605:doReplace,[])
}
Add(Replace,3368605,224,252)
{
SubStr="\u041c"
DestStr="М"
link(onReplace,9668532:doReplace,[])
}
Add(Replace,9668532,266,252)
{
SubStr="\u041d"
DestStr="Н"
link(onReplace,4251689:doReplace,[])
}
Add(Replace,4251689,308,252)
{
SubStr="\u041e"
DestStr="О"
link(onReplace,1124743:doReplace,[])
}
Add(Replace,1124743,350,252)
{
SubStr="\u041f"
DestStr="П"
link(onReplace,11318207:doReplace,[])
}
Add(Replace,11318207,392,252)
{
SubStr="\u0420"
DestStr="Р"
link(onReplace,11042766:doReplace,[])
}
Add(Replace,11042766,434,252)
{
SubStr="\u0421"
DestStr="С"
link(onReplace,13355230:doReplace,[])
}
Add(Replace,13355230,476,252)
{
SubStr="\u0422"
DestStr="Т"
link(onReplace,4900350:doReplace,[(520,258)(520,279)(86,279)(86,300)])
}
Add(Replace,4900350,98,294)
{
SubStr="\u0423"
DestStr="У"
link(onReplace,9950918:doReplace,[])
}
Add(Replace,9950918,140,294)
{
SubStr="\u0424"
DestStr="Ф"
link(onReplace,6444638:doReplace,[])
}
Add(Replace,6444638,182,294)
{
SubStr="\u0425"
DestStr="Х"
link(onReplace,15564509:doReplace,[])
}
Add(Replace,15564509,224,294)
{
SubStr="\u0426"
DestStr="Ц"
link(onReplace,10661353:doReplace,[])
}
Add(Replace,10661353,266,294)
{
SubStr="\u0427"
DestStr="Ч"
link(onReplace,10215436:doReplace,[])
}
Add(Replace,10215436,308,294)
{
SubStr="\u0428"
DestStr="Ш"
link(onReplace,5492015:doReplace,[])
}
Add(Replace,5492015,350,294)
{
SubStr="\u0429"
DestStr="Щ"
link(onReplace,13695778:doReplace,[])
}
Add(Replace,13695778,392,294)
{
SubStr="\u042a"
DestStr="Ъ"
link(onReplace,3255859:doReplace,[])
}
Add(Replace,3255859,434,294)
{
SubStr="\u042b"
DestStr="Ы"
link(onReplace,4096047:doReplace,[])
}
Add(Replace,4096047,476,294)
{
SubStr="\u042c"
DestStr="Ь"
link(onReplace,640845:doReplace,[(520,300)(520,321)(86,321)(86,342)])
}
Add(Replace,640845,98,336)
{
SubStr="\u042d"
DestStr="Э"
link(onReplace,11066601:doReplace,[])
}
Add(Replace,11066601,147,336)
{
SubStr="\u042e"
DestStr="Ю"
link(onReplace,15717129:doReplace,[])
}
Add(Replace,15717129,196,336)
{
SubStr="\u042f"
DestStr="Я"
link(onReplace,830047:onEvent1,[(404,342)(404,27)])
}
Add(StrMask,5877760,42,42)
{
link(onFalse,4411391:doReplace,[])
link(Str,830047:Data1,[(48,32)(27,32)])
}
END_SDK
Add(VisualStrings,16688138,455,0)
{
Lines=#45:"\U0430"=>"а", "\U0431"=>"б", "\U0432"=>"в", |106: "\U0433"=>"г", "\U0434"=>"д", "\U0435"=>"е", "\U0451"=>"ё", "\U0436"=>"ж", "\U0437"=>"з", "\U0438"=>"и", |106: "\U0439"=>"й", "\U043A"=>"к", "\U043B"=>"л", "\U043C"=>"м", "\U043D"=>"н", "\U043E"=>"о", "\U043F"=>"п", |106: "\U0440"=>"р", "\U0441"=>"с", "\U0442"=>"т", "\U0443"=>"у", "\U0444"=>"ф", "\U0445"=>"х", "\U0446"=>"ц", |106: "\U0447"=>"ч", "\U0448"=>"ш", "\U0449"=>"щ", "\U044A"=>"ъ", "\U044B"=>"ы", "\U044C"=>"ь", "\U044D"=>"э", |106: "\U044E"=>"ю", "\U044F"=>"я", "\U0410"=>"А", "\U0411"=>"Б", "\U0412"=>"В", "\U0413"=>"Г", "\U0414"=>"Д", |106: "\U0415"=>"Е", "\U0401"=>"Ё", "\U0416"=>"Ж", "\U0417"=>"З", "\U0418"=>"И", "\U0419"=>"Й", "\U041A"=>"К", |106: "\U041B"=>"Л", "\U041C"=>"М", "\U041D"=>"Н", "\U041E"=>"О", "\U041F"=>"П", "\U0420"=>"Р", "\U0421"=>"С", |106: "\U0422"=>"Т", "\U0423"=>"У", "\U0424"=>"Ф", "\U0425"=>"Х", "\U0426"=>"Ц", "\U0427"=>"Ч", "\U0428"=>"Ш", |108: "\U0429"=>"Щ", "\U042A"=>"Ъ", "\U042B"=>"Ы", "\U042C"=>"Ь", "\U042D"=>"Э", "\U042E"=>"Ю", "\U042F"=>"Я")); |
Width=151
Height=865
}

карма: 0

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#7: 2018-11-07 18:39:46 ЛС | профиль | цитата
egorhay писал(а):
Короче решил эту проблему вот так вот, делюсь схемой.

Молодец, но можно проще

Схема


Add(MainForm,2953706,196,231)
{
Width=442
Height=339
}
Add(Memo,10787453,259,217)
{
Left=15
Top=10
Width=190
Height=250
Strings=#121:\u0421\u043c\u043e\u043b\u0435\u043d\u0441\u043a, 119 \u0443\u043b\u0438\u0446\u0430 \u041f\u043e\u043f\u043e\u0432\u0430|
ScrollBars=2
}
Add(Memo,2733412,315,266)
{
Left=220
Top=10
Width=190
Height=250
ScrollBars=2
}
Add(Button,6412331,196,287)
{
Left=180
Top=270
TabOrder=-1
Caption="Decode"
link(onClick,4629344:doMultiReplace,[])
}
Add(MultiReplace,4629344,259,287)
{
ReplaceList="\\\u0410 = А;\r\n\\\u0411 = Б;\r\n\\\u0412 = В;\r\n\\\u0413 = Г;\r\n\\\u0414 = Д;\r\n\\\u0415 = Е;\r\n\\\u0401 = Ё;\r\n\\\u0416 = Ж;\r\n\\\u0417 = З;\r\n\\\u0418 = И;\r\n\\\u0419 = Й;\r\n\\\u041A = К;\r\n\\\u041B = Л;\r\n\\\u041c = М;\r\n\\\u041d = Н;\r\n\\\u041e = О;\r\n\\\u041f = П;\r\n\\\u0420 = Р;\r\n\\\u0421 = С;\r\n\\\u0422 = Т;\r\n\\\u0423 = У;\r\n\\\u0424 = Ф;\r\n\\\u0425 = Х;\r\n\\\u0426 = Ц;\r\n\\\u0427 = Ч;\r\n\\\u0428 = Ш;\r\n\\\u0429 = Щ;\r\n\\\u042a = Ъ;\r\n\\\u042b = Ы;\r\n\\\u042c = Ь;\r\n\\\u042d = Э;\r\n\\\u042e = Ю;\r\n\\\u042f = Я;\r\n\\\u0430 = а;\r\n\\\u0431 = б;\r\n\\\u0432 = в;\r\n\\\u0433 = г;\r\n\\\u0434 = д;\r\n\\\u0435 = е;\r\n\\\u0436 = ж;\r\n\\\u0437 = з;\r\n\\\u0438 = и;\r\n\\\u0439 = й;\r\n\\\u043a = к;\r\n\\\u043b = л;\r\n\\\u043c = м;\r\n\\\u043d = н;\r\n\\\u043e = о;\r\n\\\u043f = п;\r\n\\\u0440 = р;\r\n\\\u0441 = с;\r\n\\\u0442 = т;\r\n\\\u0443 = у;\r\n\\\u0444 = ф;\r\n\\\u0445 = х;\r\n\\\u0446 = ц;\r\n\\\u0447 = ч;\r\n\\\u0448 = ш;\r\n\\\u0449 = щ;\r\n\\\u044a = ъ;\r\n\\\u044b = ы;\r\n\\\u044c = ь;\r\n\\\u044d = э;\r\n\\\u044e = ю;\r\n\\\u044f = я;\r\n\\\u0451 = ё;"
link(onResult,2733412:doText,[])
link(Text,10787453:Text,[])
}

карма: 22

0
Ответов: 253
Рейтинг: 0
#8: 2018-11-07 19:02:25 ЛС | профиль | цитата
Спасибо большое за помощь)
карма: 0

0
8
Сообщение
...
Прикрепленные файлы
(файлы не залиты)