Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Гимнаст от Октябрь 30, 2011, 13:39



Название: Код символа
Отправлено: Гимнаст от Октябрь 30, 2011, 13:39
Привет!
Надо получить символ по его коду.
В начале я получаю код символа(строка типа "a,b,c"):
Код:
QStringList mylist=lineEdit_3->text().split(",");		
int* str=new int[mylist.length()];
for (int i=0;i<mylist.length();i++)
str[i]=mylist[i][0].toAscii();

потом по хранящемуся в массиве res числам 97,98,99 я должен получить a,b,c. По идее я должегн это сделать с помощью метода fromAscii. вот это выдает кракозябру какую-то:
Код:
char ch=(char)res[0];	
lineEdit_4->setText(QString::fromAscii(&ch));
for (int i=1;i<mylist.length();i++)
lineEdit_4->setText(lineEdit_4->text()+","+QString::fromAscii(&ch));


Название: Re: Код символа
Отправлено: kambala от Октябрь 30, 2011, 14:39
код из символа:
Код
C++ (Qt)
QStringList mylist = lineEdit_3->text().split(",");
QList<int> codes;
foreach (const QString &symbol, mylist)
   codes += symbol.at(0).toAscii();

символ из кода:
Код
C++ (Qt)
QString newText;
foreach (int code, codes)
   newText += QChar(code) + ",";
newText.chop(1); // убрать лишнюю последнюю запятую
lineEdit_4->setText(newText);