Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 1017

 
lütfen bana böyle veriler olduğunu söyleyin <td colspan=\"8\" class=\"theDay\">\u0421\u0440\u0435\u0434\u0430, \u0410\u043f\u0440\u0435\u043b\u044c 20, 2016 < \/td>\n UTF-8 biçiminde

Onlardan Rusça almak için ANSI'ye, yani CP_ACP'ye çevirmeniz gerektiğini doğru anlıyorum.

Bunu şu dize gibi yapıyorum ttt =CharArrayToString(RESULT,0,CP_ACP); ve hiçbir şey değişmez, yalnızca dize değişkeninde veriler alınır
CP_ACP altındaki bir dosyaya kaydetme de çalışmıyor.
%100 Yanlış bir şey yapıyorum. çevrimiçi kod çözücü doğru çevirir. sonuç şudur: heDay\">Çarşamba, 20 Nisan 2016<\/td>\n (UTF-8'den kod dönüştürme yapılırken bile, uurlencoding posta filtresi kullanılır)
SORU: MQL'de nasıl yapılır?
 
Money_Maker :
lütfen bana böyle veriler olduğunu söyleyin <td colspan=\"8\" class=\"theDay\">\u0421\u0440\u0435\u0434\u0430, \u0410\u043f\u0440\u0435\u043b\u044c 20, 2016 < \/td>\n UTF-8 biçiminde

Onlardan Rusça almak için ANSI'ye, yani CP_ACP'ye çevirmeniz gerektiğini doğru anlıyorum.

Bunu şu dize gibi yapıyorum ttt =CharArrayToString(RESULT,0,CP_ACP); ve hiçbir şey değişmez, yalnızca dize değişkeninde veriler alınır
CP_ACP altındaki bir dosyaya kaydetme de çalışmıyor.
%100 Yanlış bir şey yapıyorum. çevrimiçi kod çözücü doğru çevirir. sonuç: heDay\">20 Nisan 2016 Çarşamba<\/td>\n
SORU: MQL'de nasıl yapılır?
Nereden biliyorsun - yaz. Benzer bir sorun var.
 
Money_Maker :
lütfen bana böyle veriler olduğunu söyleyin <td colspan=\"8\" class=\"theDay\">\u0421\u0440\u0435\u0434\u0430, \u0410\u043f\u0440\u0435\u043b\u044c 20, 2016 < \/td>\n UTF-8 biçiminde

Onlardan Rusça almak için ANSI'ye, yani CP_ACP'ye çevirmeniz gerektiğini doğru anlıyorum.

Bunu şu dize gibi yapıyorum ttt =CharArrayToString(RESULT,0,CP_ACP); ve hiçbir şey değişmez, yalnızca dize değişkeninde veriler alınır
CP_ACP altındaki bir dosyaya kaydetme de çalışmıyor.
%100 Yanlış bir şey yapıyorum. çevrimiçi kod çözücü doğru çevirir. sonuç şudur: heDay\">Çarşamba, 20 Nisan 2016<\/td>\n (UTF-8'den kod dönüştürme yapılırken bile, uurlencoding posta filtresi kullanılır)
SORU: MQL'de nasıl yapılır?
https://forum.mql4.com/ru/67441
 
eevviill :
https://forum.mql4.com/ru/67441
 Print ( CharArrayToString (RESULT));
kayıt olmuyor... (Bunu zaten denedim.. Benzer bir şey bulmuş gibiyim... https://forum.mql4.com/en/18476

 #import "kernel32.dll"
   int WideCharToMultiByte( int CodePage, int dwFlags, int &lpWideCharStr[], int cchWideChar, string lpMultiByteStr, int cbMultiByte, 
                           int lpDefaultChar, int lpUsedDefaultChar);
#import

Şimdiye kadar gerçek işe yaramadı ... ama neye ihtiyaç var gibi görünüyor, ya da değil?
 
lütfen söyle bana, verileri resimdeki gibi programlı olarak nasıl yeniden kodlayabilirim (kadabralar Rusça harflere dönüştürülür)? Hangi yönde nereye kazılacak (?


 
Money_Maker :
lütfen söyle bana, verileri resimdeki gibi programlı olarak nasıl yeniden kodlayabilirim (kadabralar Rusça harflere dönüştürülür)? Hangi yönde nerede kazılır (?



Yanılmıyorsam, bu base64'tür, programlı olarak yalnızca PHP'de kodlanabilir veya MQ'da kendi işlevinizi yazabilir
 
teşekkürler, zaten farklı seçenekler düşündüm
Kodlama dahil 1 indirme
2 tarayıcıdaki bir istekten sonra sayfayı indirdikten sonra normal şekilde görüntülenir
WinDLL veya C++'dan kod dönüştürmek için 3 farklı işlev
4 Şimdi her harf için bir kod seçeceğim ve kodunu çözeceğim (yani kendi işlevim) geldi.


peki, MQL kodu nasıl yazılır, örneğin, bu "\u0430"

'u' uyarısı veriyor - tanınmayan karakter kaçış sırası

 
Money_Maker :
teşekkürler, zaten farklı seçenekler düşündüm
Kodlama dahil 1 indirme
2 tarayıcıdaki bir istekten sonra sayfayı indirdikten sonra normal şekilde görüntülenir
WinDLL veya C++'dan kod dönüştürmek için 3 farklı işlev
4 Şimdi her harf için bir kod seçeceğim ve kodunu çözeceğim (yani kendi işlevim) geldi.


peki, MQL kodu nasıl yazılır, örneğin, bu "\u0430"

'u' uyarısı veriyor - tanınmayan karakter kaçış sırası

Burada PHP'de prensibine göre MQ'da yaparsınız.

function conv($str)
{
$uot = '' ;
$unicodePoints = array( '\u0410' , '\u0411' , '\u0412' , '\u0413' ,
'\u0414' , '\u0415' , '\u0416' , '\u0417' ,
'\u0418' , '\u0419' , '\u041A' , '\u041B' ,
'\u041C' , '\u041D' , '\u041E' , '\u041F' ,
'\u0420' , '\u0421' , '\u0422' , '\u0423' ,
'\u0424' , '\u0425' , '\u0426' , '\u0427' ,
'\u0428' , '\u0429' , '\u042A' , '\u042B' ,
'\u042C' , '\u042D' , '\u042E' , '\u042F' ,
'\u0430' , '\u0431' , '\u0432' , '\u0433' ,
'\u0434' , '\u0435' , '\u0436' , '\u0437' ,
'\u0438' , '\u0439' , '\u043A' , '\u043B' ,
'\u043C' , '\u043D' , '\u043E' , '\u043F' ,
'\u0440' , '\u0441' , '\u0442' , '\u0443' ,
'\u0444' , '\u0445' , '\u0446' , '\u0447' ,
'\u0448' , '\u0449' , '\u044A' , '\u044B' ,
'\u044C' , '\u044D' , '\u044E' , '\u044F' );
$hexView = array(   'd090' , 'd091' , 'd092' , 'd093' ,
'd094' , 'd095' , 'd096' , 'd097' ,
'd098' , 'd099' , 'd09a' , 'd09b' ,
'd09c' , 'd09d' , 'd09e' , 'd09f' ,
'd0a0' , 'd0a1' , 'd0a2' , 'd0a3' ,
'd0a4' , 'd0a5' , 'd0a6' , 'd0a7' ,
'd0a8' , 'd0a9' , 'd0aa' , 'd0ab' ,
'd0ac' , 'd0ad' , 'd0ae' , 'd0af' ,
'd0b0' , 'd0b1' , 'd0b2' , 'd0b3' ,
'd0b4' , 'd0b5' , 'd0b6' , 'd0b7' ,
'd0b8' , 'd0b9' , 'd0ba' , 'd0bb' ,
'd0bc' , 'd0bd' , 'd0be' , 'd0bf' ,
'd180' , 'd181' , 'd182' , 'd183' ,
'd184' , 'd185' , 'd186' , 'd187' ,
'd188' , 'd189' , 'd18a' , 'd18b' ,
'd18c' , 'd18d' , 'd18e' , 'd18f' );
for ($i= 0 ; $i < strlen( $str ); $i++)
{
if (bin2hex($str{$i}) >= 'd0' && bin2hex($str{$i}) <= 'd1' )
{
$uot .= bin2hex($str{$i}).bin2hex($str{$i+ 1 });
$i++;
}
elseif(bin2hex($str{$i}) <= '7e' )
{
$uot .= '\u00' .bin2hex($str{$i});
}
else $uot .= htmlentities($str{$i},ENT_QUOTES, 'UTF-8' );
}
return str_replace($hexView,$unicodePoints, $uot);
}

Buradaki nokta, dizeyi karakterlere ayırmanız ve diziyle eşleştiğinde istenen karakter için karakter karakter değiştirme yapmanızdır.

 
Trader76 :

Burada PHP'de prensibine göre MQ'da yaparsınız.

Buradaki nokta, dizeyi karakterlere ayırmanız ve diziyle eşleştiğinde istenen karakter için karakter karakter değiştirme yapmanızdır.

Çok teşekkür ederim, daha hızlı olacak, ayrıca ilkeyi “yapıştırmaya” karar verdim, karakter kodları için özel teşekkürler, şimdi onları aramanıza gerek kalmayacak.
 
Money_Maker :
Çok teşekkür ederim, daha hızlı olacak, ayrıca ilkeye bağlı kalmaya karar verdim, karakter kodları için özel teşekkürler, şimdi onları aramanıza gerek kalmayacak.

StringGetChar()

StringGetCharacter()

Yoksa değil mi?