Вверх ↑
Пакеты 
HiAsm4
Windows 
Компоненты 
Фaйлы 
Потоки - StreamConvertor

StreamConvertor
Краткое описание
   Компонент предназначен для конвертирования потока данных в строку с указанным форматом или наоборот - преобразования строки в поток
Параметры
  • Mode - StreamToHex - Поток->HEX, HexToStream - HEX->Поток, StrToHex - Строка->HEX, HexToStr - HEX->Строка, StreamToASCII - Поток->Строка с набором ASCII символов, StrToASCII - Строка->Строка с набором ASCII символов, StreamToStr - Поток->Строка, StrToStream - Строка->Поток
  • Symbol - Заменитель непечатных символов в строке для методов StreamToASCII и StrToASCII
  • Методы
  • doConvert - Конвертирует входные данные согласно параметра Mode
  • События
  • onResult - Выдаёт результат операции в поток
  • Свойства
  • Position - Текущая позиция преобразования
  • CheckSum - Контрольная сумма для байтового потока
  • Данные
  • Data - Данные для преобразования
  • Примеры
       Пример использования компонента StreamConvertor
    
    Add(MainForm,16075205,175,266)
    {
    Left=10
    Top=10
    Height=476
    Ctl3D=0
    Caption="Пример использования StreamConvertor"
    Position=1
    }
    Add(Button,5646810,175,203)
    {
    Left=160
    Top=115
    Color=-16777211
    Caption="Coder"
    Data=String(1)
    link(onClick,8260601:doPart,[])
    }
    Add(FileStream,11349030,329,203)
    {
    link(onLoad,13790286:doConvert,[])
    }
    Add(Memo,13554348,441,203)
    {
    Left=10
    Top=10
    Width=375
    Height=95
    ScrollBars=3
    link(onChange,11349030:doClose,[(483,209)(483,193)(316,193)(316,216)])
    }
    Add(Image,8020156,546,273)
    {
    Left=15
    Top=140
    Width=365
    Height=260
    }
    Add(Jpeg,8468230,497,273)
    {
    Quality=95
    Point(Stream)
    Point(doLoadFromStream)
    Point(doBitmap)
    link(onBitmap,8020156:doLoad,[])
    }
    Add(Button,15886738,385,266)
    {
    Left=165
    Top=410
    Color=-16777211
    Caption="Decoder"
    Data=String(1)
    Point(onMouseDown)
    link(onClick,8468230:doBitmap,[(428,272)(428,300)])
    link(onMouseDown,15227402:doConvert,[])
    }
    Add(StreamConvertor,13790286,385,203)
    {
    link(onResult,13554348:doAdd,[])
    }
    Add(StreamConvertor,15227402,441,273)
    {
    Mode=1
    link(onResult,8468230:doLoadFromStream,[(485,279)(485,293)])
    link(Data,13554348:Text,[])
    }
    Add(Application,6289009,224,147)
    {
    }
    Add(FilePartElm,8260601,224,203)
    {
    Mode=0
    link(onPart,2421902:doStrCat,[])
    link(FileName,6289009:AppFileName,[])
    }
    Add(StrCat,2421902,273,203)
    {
    Str2="Int\logo.jpg"
    link(onStrCat,11349030:doOpen,[])
    }
    Замечания
      Разница между режимами StreamToStr и StreamToASCII заключается в том, что в режиме StreamToStr при преобразовании не-текстовых файлов результирующая строка может содержать служебные непечатаемые символы, в том числе символ с кодом #0. Строки с такими символами обычно неправильно отображаются в интерфейсных элементах, а также могут приводить к непредсказуемым результатам при обработке другими компонентами.
    Поэтому, если с помощью StreamConvertor вы обрабатываете бинарные (не-текстовые) файлы и не уверены в необходимости сохранения всего диапазона символов в строке, используйте режим StreamToASCII вместо StreamToStr.


    Обновление элемента: [svn]StreamConvertor.pas[/svn]
    BB-code статьи для вставки
    Всего комментариев: 0
    (комментарии к статье еще не добавлены)
    Комментарий
    ...