Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Кракозябры при копировании текста из TXT файла

Страниц (1): [1]
 

1. neba2101 - 18 Августа, 2023 - 10:28:36 - перейти к сообщению
Содержимое 111.txt
CODE:
строка
строка
строка
.cv
строка
строка
.cv
dsfsdfsdf
sdfsdf
sdfsdfdsfsdf
fsd
.cv
строка
строка
строка


Копирую содержимое текстового файла до каждой .cv и вставляю нажатием на ЛКМ
CODE:
string pf=pathfolder();
string buf_cod="";
string slovar[500];
string Text;

if(fopen (pf+"111.txt", "r")!=0)
{
int k=freadlineall(#slovar[0], 500);
fclose();
for (int n=0; n<k; n++)
{
if(regexsearch(1, #Text, slovar[n], "^\.cv", IGNORECASE)==1){
paste();
continue;
}
if(buf_cod!="")buf_cod=buf_cod+"^r^n";
buf_cod=buf_cod+slovar[n];
}
writeclipboard(buf_cod);
}

function paste()
{
if(buf_cod!=""){
regexreplace(1, #buf_cod, buf_cod, "[\r\n]$", "");
writeclipboard(buf_cod);
ctrl_v_по_ЛКМ();
buf_cod="";
}
}

function ctrl_v_по_ЛКМ()
{
loop()
{
if(getkeystate(1)==1)
{
while(getkeystate(1)==1)sleep(50);
keydown(CONTROL);
sleep(150);
key('v');
sleep(150);
keyup(CONTROL);
break;
}
sleep(50);
}
}


В редактор Кибор вставляет норм, а в блокнот, браузер первые 3 строки до .cv нормально(если раскладка РУ), а потом кракозябры. Если раскладка EN все русские символы кракозябры. Как бороться? Спасибо!
2. Zireael - 18 Августа, 2023 - 17:52:52 - перейти к сообщению
Перед копированием в буфер нужно установить русскую раскладку в кибор.
Если файл в utf8, то нужно перевести текст в ansi.
CODE:
sendlanguage("00000419", formatiw(gethwnd()));
writeclipboard(utf8toansi(buf_cod));

Powered by ExBB FM 1.0 Final