Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (до версии 2009) - часть 5

Модерирует : ShIvADeSt

ShIvADeSt (19-05-2010 05:14): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=11215  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжение темы Вопросы по Delphi (до версии 2009) - часть 4

Познаем сами, помогаем другим...
Обсуждаем вопросы, не связанные с юникоидными версиями Delphi - для этого есть соответствующая тема (см. ссылки ниже).

Правила топика:
    Прежде чем спрашивать:
  1. Желательно изучить вопрос, попытаться найти ответ в прилагаемых мануалах, хелпах и анализируя исходники.
  2. Выполнить поиск по топику (открыть "Версия для печати" и поискать ответ там).
  3. Применить фильтр по разделу "Прикладное программирование". Ответы на многие старые вопросы могли быть даны в отдельных темах.
  4. Продумайте вопрос. На поверхностные вопросы вы получите поверхностные ответы, или вообще ответов не получите.
  5. Желательно указывать версии используемого компилятора и операционной системы.
    Прежде чем отвечать:
  1. Если не можете помочь, не мешайте.
  2. Если уж вы отвечаете на вопрос, давайте ответ по сути.
  3. Если вы не уверены, так и говорите! Ошибочный, но авторитетно звучащий ответ хуже, чем отсутствие ответа.
  4. Задавайте дополнительные вопросы, чтобы получить больше информации.
  • Отсутствие ответа не равносильно игнорированию - иногда участники форума просто не знают ответ. Повторная посылка вопроса не приветствуется. Посты типа "неужели никто не знает ответа..." или "может мне все-таки кто-нибудь ответит" недопустимы.  
  • Все большие куски кода (более 5 строк) оформляем в тег [morе] дабы уменьшить размер поста. FAQ по тегу [morе].

  • Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:09 28-06-2009 | Исправлено: psa1974, 12:00 02-02-2010
    victorman2010

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    greenpc
    Открытие файла: Подробнее...
    Распаковка: Подробнее...
     
     
     
     
    Добавлено:
    Распаковывает вроде правильно, когда файл первый раз загружаю все отображается нормально, а вот после сохранения коверкает русский текст.

    Всего записей: 33 | Зарегистр. 16-12-2009 | Отправлено: 12:00 20-01-2010
    V1s1ter



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    crazypiggy
    Вот Вам примеры в исходниках по рисовании линий, плоского и объемного текста.
    http://www.onlinedisk.ru/file/324721/
    Возможно потребует кмодуль типа RxCombo, то удалите его из секции uses, они уже не используются.

    Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 12:41 20-01-2010
    greenpc

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    victorman2010

    Цитата:
    sXTR := OpenDialog1.Filename;  

    надеюсь, что sXTR <>'C:\_zx.xml' ?
    _http://www.delphisources.ru/pages/faq/base/compress_and_uncompress_threads.html
    код рабочийю Попробуй на время в проэкте убрать компрессию и посмотри как работает.

    Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 13:11 20-01-2010
    victorman2010

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    надеюсь, что sXTR <>'C:\_zx.xml' ?

    нет конечно

    Цитата:
    код рабочийю Попробуй на время в проэкте убрать компрессию и посмотри как работает.

    В xml файл записывается нормально (в нормальной кодировке).
    Может как то в cxGride можно отобразить в др. кодировке. Пробовал Utf8ToAnsi, не помогло.
     

    Всего записей: 33 | Зарегистр. 16-12-2009 | Отправлено: 13:28 20-01-2010
    JohnSilver182



    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Вот Вам примеры в исходниках по рисовании линий, плоского и объемного текста.
    http://www.onlinedisk.ru/file/324721/
    Возможно потребует кмодуль типа RxCombo, то удалите его из секции uses, они уже не используются.

     
    Читал http://bash.org.ru/  и нечаянно переключился на это окно ,  читаю  и думаю  что  http://bash.org.ru/   что то несмешной сегодня

    Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 14:38 20-01-2010
    greenpc

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    victorman2010
    играем в ромашку

    Цитата:
    В xml файл записывается нормально (в нормальной кодировке).  

    что вы считаете "нормальной" ? тип кодировки?

    Цитата:
    Может как то в cxGride можно отобразить в др. кодировке

    можно. GetDisplayText
    всетаки нужно
    Цитата:
    др. кодировке
    перевести в "нормальную для грида"

    Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 15:29 20-01-2010
    V1s1ter



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    JohnSilver182
    И чем Вам так понравилась цитата?
    только ответьте пожалуста в ЛС, чтоб не флудить тут.

    Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 15:57 20-01-2010
    victorman2010

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    greenpc
    Спасибо вопрос решил:
            sXTR := OpenDialog1.Filename;
            sXML := ExtractFile(sXTR);  
            XML := TXMLDocument.Create(nil);
            XML.LoadFromXML(sXML);
            XML.Active := true;
            XML.Encoding := 'ISO-8859-1'; //Здесь нужно было кодировку выставить
            XML.SaveToFile('C:\_zx.xml');

    Всего записей: 33 | Зарегистр. 16-12-2009 | Отправлено: 15:58 20-01-2010
    victorman2010

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте, подскажите как в FastReport 3 отсортировать данные в колонке? Не могу найти нигде, спасибо.
     
    Добавлено:
    В гриде так:
    cxGrid2DBTableView1ddd.SortIndex := 0;
    cxGrid2DBTableView1ddd.SortOrder:=soAscending;

    Всего записей: 33 | Зарегистр. 16-12-2009 | Отправлено: 13:48 21-01-2010
    greenpc

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    victorman2010

    Цитата:
    FastReport 3 отсортировать данные в колонке

    может лучше в ClientDataSet
    fn :='FieldName1';
    ClientDataSet1.AddIndex(fn + 'Index', fn, [ixCaseInsensitive],'','',0);
    ClientDataSet1.IndexName := fn + 'Index';
    или из хелпа IndexFieldNames property (TCustomClientDataSet)

    Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 14:00 21-01-2010 | Исправлено: greenpc, 14:06 21-01-2010
    lingus



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Приветствую.
    Подскажите, куда рыть.
    Есть приложение на JAVA в нем создаются текстовые ресурсы (файлы и данные в БД).
    Данные эти UNICODE пишутся в виде escape-последовательностей вида \uXXXX, где XXXX UNICOD-ное значение символа.... ну это стандартно.
    Delphi7
    Нужно в программе как-то это дело преобразовать к ANSI виду обработать и записать....
     
    уже все перепробовал
    WideStringToUTF8
    AnsiToUTF8
    UTF8Encode
    там все ясно, но нужны то escape-последовательности...
    вот с ними как быть? распознать в потоке и записать их?
    в JAVA там есть готовые инструменты как я понимаю, а на паскале что используется для этого?

    Всего записей: 73 | Зарегистр. 08-05-2008 | Отправлено: 16:37 21-01-2010
    zakov



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    в JAVA там есть готовые инструменты как я понимаю, а на паскале что используется для этого?

     
    Если в JAVA есть готовые инструменты - так посмотрите их исходники и перепишите на Delphi...

    Всего записей: 163 | Зарегистр. 24-01-2008 | Отправлено: 23:50 21-01-2010
    VadimLou



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    в JAVA там есть готовые инструменты как я понимаю

    сильно сомневаюсь ...
    делов то - всего пару мелкий ф-ций накрапать
    -EncodeStringToUXX
    -DecodeUXXToString

    Всего записей: 702 | Зарегистр. 22-07-2004 | Отправлено: 05:36 22-01-2010
    lingus



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    сильно сомневаюсь ...
    делов то - всего пару мелкий ф-ций накрапать
    -EncodeStringToUXX
    -DecodeUXXToString  

    Дык, что получается - это не общепризнанное кодирование????
    и в википедии и на сайте unicode везде это обозначение? и что ни у кого нет инструментов? Каждый пишет для себя реализацию?
    Это же не javaвское - это unicode-ная фишка?
     
    может быть я не так ищу? Как вообще можно назвать этот процесс? кодирование и декодирование unicode в....   во что?

    Всего записей: 73 | Зарегистр. 08-05-2008 | Отправлено: 09:14 22-01-2010
    lingus



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Может кому пригодится

    Код:
    function UxxxxEncode(aStr:String):string;
    var
      L,i:integer;
      ws:WideString;
    begin
      L:=length(aStr);
      SetLength(ws,L+1);
      StringToWideChar(aStr,pwidechar(ws),L+1);
      result:='';
      for i := 1 to L do
        result:=result+'\u'+inttohex(integer(ws[i]),4);
    end;
     
    function UxxxxDecode(aStr:string):string;
    var
      CurPos:integer;
      Lastpos:integer;
      i:integer;
    begin
      Result:='';
      LastPos:=1;
      CurPos:=pos('\u',aStr);
      while (CurPos<>0) do
      begin
        Result:=Result+Copy(aStr,LastPos,CurPos-LastPos);
        if tryStrToInt('$'+copy(aStr,CurPos+2,4),i) then
        begin
          result:=result+wideChar(i);
          LastPos:=CurPos+6;
        end
        else
        begin
          Result:=Result+'\u';
          LastPos:=CurPos+2;
        end;
        CurPos:=PosEx('\u',aStr,LastPos);
      end;
      if Result='' then
        Result:=aStr;
    end;

    Всего записей: 73 | Зарегистр. 08-05-2008 | Отправлено: 16:27 22-01-2010 | Исправлено: lingus, 16:29 22-01-2010
    VadimLou



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    lingus

    Цитата:
    это не общепризнанное кодирование????

    Это общепринятое обозначение для книг (возможно хранения/передачи)

    Всего записей: 702 | Зарегистр. 22-07-2004 | Отправлено: 17:27 22-01-2010
    lingus



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    VadimLou

    Цитата:
    Это общепринятое обозначение для книг (возможно хранения/передачи)  

    значит "это" как-то должно называться?

    Всего записей: 73 | Зарегистр. 08-05-2008 | Отправлено: 17:30 22-01-2010
    data man



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    lingus

    Цитата:
    значит "это" как-то должно называться?

    Так и называется "Unicode escape characters" или "Unicode character escape sequences"
    http://www.codecodex.com/wiki/Escape_sequences_and_escape_characters#Unicode

    ----------
    Любой достаточно развитый тролль неотличим от подлинно помешанного на какой-либо идее.
    Кекс. Антибиотики. Ламбада.

    Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 17:58 22-01-2010
    victorman2010

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток.
    По нету приходят файлы. Моя программа распаковывает в xml файл и открывает его (вывожу в cxGrid), редактирует и потом обратно записывает в xml и запаковывает. xmlMapper'om созданы два транспорт файла (.xtr). Использую компоненты: xmlTransform, xmlTransformProvider, ClientDataSet, DataSourse, cxGrid. Суть проблемы: На компах где стоит делфа нормально открывает файлы, где нету открывать не хочет. Подскажите пожалуйста как это можно исправить (может какие то dll'ки переписать нужно с моего компа)? Заранее благодарен.

    Всего записей: 33 | Зарегистр. 16-12-2009 | Отправлено: 09:30 23-01-2010
    ShIvADeSt



    Moderator
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    victorman2010

    Цитата:
    На компах где стоит делфа нормально открывает файлы, где нету открывать не хочет.

    Сообщения об ошибках какие? Посмотри pas файлы соотв компонент и посмотри какие библиотеки они вызывают. Плюс попробуй помимо ехе еще и dpl (bpl) копировать.

    ----------
    И создал Бог женщину... Существо получилось злобное, но забавное...

    Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 10:10 23-01-2010
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (до версии 2009) - часть 5
    ShIvADeSt (19-05-2010 05:14): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=11215


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru