| 
| 
 | Вопрос # 2 963/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты!Вопрос может быть совсем банальный... но ппц.
 Допустим имеется программа. простенькая. На форме всего 1 компонент. TMemo (Или TRich, без разницы)
 Напишем туда "ПРивет". Нормально пишется, возьмем, вырежем это привет, вставим допустим в окошечко аськи, все хорошо, все норм... но если сделать пару простых действий...
 Возьмем, и стандартной функцией сохраним этот текст в файл
 Memo1.Lines.SaveToFile('text.txt');
 Далее его можно загрузить снова
 Memo1.Lines.LoadFormFile('text.txt');
 ОН так же нормально загрузится... но если уже из загруженного скопировать слово привет куданибуть... он уже выдаст Äýâèä Áåëëü вместо русских букв, а если открыть в обычном блокноте только что сохраненный файл.. блокнот его нормально откроет, а вот из блокнота хоть куда этот текст вставляй - будут одни вопросики
 ??? ????? ?????.... Так же если в самом начале, просто в TMemo скопировать чтонибуть из Windows (например нажать на файле "новая папка12.rar" переименовать, текст скопировать и вставить в Memo), то точно так же будут вместо русских букв одни вопросики...
 при чем английский текст не трогается. все эти глюки с русским... мб кто то сталкивался с подобным ? инет молчит как партизан((( За раннее Премного благодарен...
 
|  |   Вопрос задал: BloodVIRUS (статус: Посетитель)Вопрос отправлен: 2 июля 2009, 00:39
 Состояние вопроса: открыт, ответов: 2.
 |  Ответ #1. Отвечает эксперт: Вадим К Здравствуйте, BloodVIRUS!Старая известная проблема Windows при копировании с неюникодного приложения (а все делфовские до 2007 включительно такими являются) в юникодное. В это этом случае Windows поступает "очень мудро и использует текущую раскладку клавиатуры как базовую для перевода. И получаем абракадабру, так как часто бывает выставлена английская раскладка. А надо что бы перед копированием в обоих приложениях уже была выставлена русская (или другая нужная национальная кодировка).
 А все другие последствия, которые наблюдаются - следствие многократного преобразования. Знаки вопроса - это ситуация "докодировались". когда неюникодный текст расценивается как юникодный и пытается в неюникод сконвертировать с неверной кодовой таблицей. В принципе каждый случай в цепочке преобразований  могу объяснить, но смысл?
 Лечить? делать юникодные приложения, либо позвонить в майкрософт... хотя они вряд ли сделают.
 А так - мучиться, не забывая переключать раскладку.
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 2 июля 2009, 03:31
 
 |  Ответ #2. Отвечает эксперт: min@y™ Попробуй ковырнуть настройки раскладки в реестре и перезагрузиться.Где ковырять - смотри скриншот в прицепе.
 К ответу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки ответа)
 
 
|  | Ответ отправил: min@y™ (статус: Доктор наук)Время отправки: 2 июля 2009, 08:23
 
 |  
 Мини-форум вопросаВсего сообщений: 6; последнее сообщение — 7 июля 2009, 16:55; участников в обсуждении: 2. 2 июля 2009, 09:26: Вопрос перемещён из тематического раздела Delphi » Прочее в раздел Delphi » Алгоритмы, преобразования модератором Ерёмин А.А. 
|   | BloodVIRUS (статус: Посетитель), 2 июля 2009, 09:31 [#1]:Такс, ладно, сейчас попробовал из блокнота сохранить текст в юникоде, и из буфера повставлять текст везде, раньше там были или вопросики или иероглифы, сейчас все нормально. Но если через memo1.Lines.LoadFormFile('text.txt') загружать, то отображаются такие кракобяки яю0720=85, ну и наверно следовательный вопрос:
 Как сохрянять текст из Memo в юникоде, и как его загружать ?
 |  
|   | Вадим К (статус: Академик), 2 июля 2009, 09:52 [#2]:видите 0400?  (у меня в фаерфоксе это даже тут отображается). Выходов три
 - научиться конвертировать текст с юнинкода и обратно
 - перейти на делфи 2009
 - использовать компоненты tnt.
 Галочка "подтверждения прочтения" - вселенское зло. |  
|   | BloodVIRUS (статус: Посетитель), 2 июля 2009, 15:19 [#3]:- использовать компоненты tnt. Около 2х часов ищу уже, у меня delphi 7, нашел много компонентов, но не один не ставится, есть у вас ссылки на точно работающие компоненты ? зараннее премного благодарен...
 |  
|   | Вадим К (статус: Академик), 2 июля 2009, 15:30 [#4]:tnt теперь стали платные. поэтому "ссылки на точно работающие" это уже варёз.... Галочка "подтверждения прочтения" - вселенское зло. |  
|   | BloodVIRUS (статус: Посетитель), 2 июля 2009, 16:15 [#5]:Ну а аналоги есть ? Мне надо то 2 вещи. Из мемо сохранять в юникоде, и открывать в юникоде... все... |  
|   | BloodVIRUS (статус: Посетитель), 7 июля 2009, 16:55 [#6]:Все, всем спасибо за помощь в данном вопросе. UNICODE компонентов нет. Есть только TNT,TNS и их производные, не один крякнутый не работает, а покупать их нет резона. Скачал Delphi 2009, полностью им доволен, он даже удобнее 7ки. Всем спасибо   |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |