Re[3]: Как переконвертить в C++ Builder строку в 866 кодиров
От: Sinclair Россия https://github.com/evilguest/
Дата: 20.02.03 14:09
Оценка:
Здравствуйте, lightix, Вы писали:

U>>попользуй API-функции типа

U>>BOOL CharToOem
L>Спасибо, действительно помогла
L>А не подскажете заодно как красиво AnsiString в char * конвертнуть?
L>Я пишу вот так:
...
L>Но ведь в этом случае я ограничиваю длину строки 200 симв.
L>Можно как-то покрасивее это написать?
Ну и зря ты так пишешь. Так писать — нарываться на Buffer Overrun.
Надо примерно так:
AnsiString AnsiStringToOem(AnsiString a)
{
  char * tmp=new char[a.length+1];
  CharToOem(a, tmp);
  AnsiString res = tmp;
  delete[] tmp;
  return res;
}

не уверен насчет a.length — сам я на дельфи пишу. Но смысл понятен (я надеюсь
... << RSDN@Home 1.0 beta 6 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.