任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 1017

 
请告诉我数据<td colspan="8\" class="Day\">u0421\u0440\u0435\u0434\u0430, \u0410\u043f\u0440\u0435\u043b\u044c 20, 2016</td>\n UTF-8 格式

我没有理解错,俄语需要转换为ANSI,即转换为CP_ACP

我是这样做的string ttt =CharArrayToString(RESULT,0,CP_ACP); 没有什么变化,只是数据被存储在字符串变量中。
保存到CP_ACP下的文件也不起作用。
我做错了什么。输出是 heDay\">Wednesday, April 20, 2016</td>\n (我在从 UTF-8 转换时也使用了 uurlencoded post filter)
问题是如何在MQL中做到这一点?
 
Money_Maker:
请告诉我数据<td colspan="8\" class="Day\">u0421\u0440\u0435\u0434\u0430, \u0410\u043f\u0440\u0435\u043b\u044c 20, 2016</td>\n UTF-8 格式

我没有理解错,俄语需要转换为ANSI,即转换为CP_ACP?

我是这样做的string ttt =CharArrayToString(RESULT,0,CP_ACP); 没有什么变化,只是数据被存储在字符串变量中。
保存到CP_ACP下的文件也不起作用。
我做错了什么。在线解码器翻译正确。结果是:heDay\">2016年4月20日,星期三</td>\n
问题是如何在MQL中做到这一点?
你怎么知道--写。我有一个类似的问题。
 
Money_Maker:
请告诉我数据<td colspan="8\" class="Day\">u0421\u0440\u0435\u0434\u0430, \u0410\u043f\u0440\u0435\u043b\u044c 20, 2016</td>\n UTF-8 格式

我没有理解错,俄语需要转换为ANSI,即转换为CP_ACP?

我是这样做的string ttt =CharArrayToString(RESULT,0,CP_ACP); 没有什么变化,只是数据被存储在字符串变量中。
保存到CP_ACP下的文件也不起作用。
我做错了什么。输出是 heDay\">Wednesday, April 20, 2016</td>\n (我在从 UTF-8 转换时也使用了 uurlencoded post filter)
问题是,如何在MQL中做到这一点?
https://forum.mql4.com/ru/67441
 
eevviill:
https://forum.mql4.com/ru/67441
Print(CharArrayToString(RESULT));
没有重新编码的情况发生...( 我已经试过了......我想我找到了类似的东西......https://forum.mql4.com/ru/18476

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

它还没有发挥作用...但它似乎是正确的,还是错了?
 
你能告诉我如何转换图片中的数据吗(将卡达布拉斯转换成俄文字母)?在哪个方向挖掘(?


 
Money_Maker:
你能告诉我如何转换图片中的数据吗(将cadabras转换成俄语字母)?在哪个方向挖掘(?



如果我没有弄错的话,它是base64,只能在PHP中重新编程,或者在MQ中编写自己的函数
 
谢谢你,我已经想好了不同的方案,从
1.考虑到编码的下载
2.在浏览器中请求下载页面后,它将显示正常
从WinDLL或C++转换的3个不同功能
4、现在我已经为每个字母取了一个密码,并使用它来解码(即自己的功能)。


好的,我如何在MQL代码中写这个"\u0430"?

我得到一个警告'u'--未识别的字符转义序列

 
Money_Maker:
谢谢,已经想到了不同的选择,从
1.考虑到编码的下载
2.在浏览器中请求下载页面后,它将显示正常。
从WinDLL或C++转换的3种不同功能
4、现在来了,我将为每个字母拾取一个代码,并使用它来解码(即他们自己的功能)。


好的,我如何在MQL代码中写这个"\u0430"?

我得到一个'u'--未被识别的字符转义序列警告

在这里,在PHP中,遵循她在MQ中做的原则

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);
}

这个想法是,你把字符串分解成字符,当它与数组匹配时,用正确的字符进行逐个替换。

 
Trader76:

在这里,在PHP中,遵循她在MQ中做的原则

这个想法是,你把字符串分成若干个字符,当它与数组匹配时,用正确的字符进行逐个替换。

非常感谢你,这将是更快的,我也是这样的原则决定 "lippy "特别感谢的字符代码,现在他们将不必搜索他们。
 
Money_Maker:
非常感谢,这将会更快,这就是为什么我也决定 "舔 "的原则,特别感谢字符代码,现在我不必再去寻找它们了。

StringGetChar()

StringGetChar()

还是错了?