Delphi TStream Ïêϸ½éÉÜ
Delphi TStream Ïêϸ½éÉÜ
Stream¶ÔÏó£¬ÓÖ³ÆÁ÷ʽ¶ÔÏó£¬ÊÇTStream¡¢THandleStream¡¢TFileStream¡¢TMemoryStream¡¢TResourceStreamºÍTBlobStreamµÈµÄͳ³Æ¡£ËüÃÇ·Ö±ð´ú±íÁËÔÚ¸÷ÖÖý½éÉÏ´æ´¢Êý¾ÝµÄÄÜÁ¦£¬ËüÃǽ«¸÷ÖÖÊý¾ÝÀàÐÍ(°üÀ¨¶ÔÏóºÍ²¿¼þ)
ÔÚÄÚ´æ¡¢Íâ´æºÍÊý¾Ý¿â×Ö¶ÎÖеĹÜÀí²Ù×÷³éÏóΪ¶ÔÏó·½·¨£¬²¢ÇÒ³ä·ÖÀûÓÃÁËÃæÏò¶ÔÏó¼¼ÊõµÄÓŵ㣬ӦÓóÌÐò¿ÉÒÔÏ൱ÈÝÒ×µØÔÚ¸÷ÖÖStream¶ÔÏóÖп½±´Êý¾Ý¡£
¡¡¡¡ÏÂÃæ½éÉܸ÷ÖÖ¶ÔÏóµÄÊý¾ÝºÍ·½·¨¼°Ê¹Ó÷½·¨¡£
TStream¶ÔÏó
¡¡¡¡TStream¶ÔÏóÊÇÄÜÔÚ¸÷ÖÖý½éÖд洢¶þ½øÖÆÊý¾ÝµÄ¶ÔÏóµÄ³éÏó¶ÔÏó¡£´ÓTStream ¶ÔÏó¼Ì³ÐµÄ¶ÔÏóÓÃÓÚÔÚÄÚ´æ¡¢Windows×ÊÔ´Îļþ¡¢´ÅÅÌÎļþºÍÊý¾Ý¿â×ֶεÈý½éÖд洢Êý¾Ý¡£
¡¡ StreamÖж¨ÒåÁËÁ½¸öÊôÐÔ£ºSizeºÍPosition¡£ËüÃÇ·Ö±ðÒÔ×Ö½ÚΪµ¥Î»±íʾµÄÁ÷µÄ´óСºÍµ±Ç°Ö¸ÕëλÖá£TStreamÖж¨ÒåµÄ·½·¨ÓÃÓÚÔÚ¸÷ÖÖÁ÷ÖжÁ¡¢Ð´ºÍÏ໥¿½±´¶þ½øÖÆÊý¾Ý¡£ÒòΪËùÓеÄStream¶ÔÏó¶¼ÊÇ´ÓTStreamÖм̳ÐÀ´µÄ£¬ËùÒÔÔÚTStreamÖж¨ÒåµÄÓòºÍ·½·¨¶¼Äܱ»Stream¶ÔÏóµ÷ÓúͷÃ
ÎÊ¡£´ËÍ⣬ÓÖÓÉÓÚÃæÏò¶ÔÏó¼¼ÊõµÄ¶¯Ì¬Áª±à¹¦ÄÜ£¬TStreamΪ¸÷ÖÖÁ÷µÄÓ¦ÓÃÌṩÁËͳһµÄ½Ó¿Ú£¬¼ò»¯ÁËÁ÷µÄʹÓ㻲»Í¬Stream¶ÔÏóÊdzéÏóÁ˶Բ»Í¬´æ´¢Ã½½éµÄÊý¾ÝÉϵIJÙ×÷£¬Òò´Ë£¬TStreamµÄÐè·½·¨ÎªÔÚ²»Í¬Ã½½é¼äµÄÊý¾Ý¿½±´ÌṩÁË×î¼ò½ÝµÄÊֶΡ£
TStreamµÄÊôÐԺͷ½·¨
¡¡¡¡1. PositionÊôÐÔ¡¡
ÉùÃ÷£ºproperty Position: Longint;
¡¡¡¡PositionÊôÐÔÖ¸Ã÷Á÷ÖжÁдµÄµ±Ç°Æ«ÒÆÁ¿¡£
¡¡¡¡2. SizeÊôÐÔ
¡¡¡¡ÉùÃ÷£ºproperty Size: Longint;
SizeÊôÐÔÖ¸Ã÷ÁËÒÔ×Ö½ÚΪµ¥Î»µÄÁ÷µÄµÄ´óС£¬ËüÊÇÖ»¶ÁµÄ¡£
¡¡¡¡3. Copyfrom·½·¨
¡¡¡¡ÉùÃ÷£ºfunction Copyfrom(Source: TStream; Count: Longint): Longint;
Copyfrom´ÓSourceËùÖ¸¶¨µÄÁ÷Öп½±´Count¸ö×Ö½Úµ½µ±Ç°Á÷ÖУ¬ ²¢½«Ö¸Õë´Óµ±Ç°Î»ÖÃÒÆ¶¯Count¸ö×Ö½ÚÊý£¬º¯Êý·µ»ØÖµÊÇʵ¼Ê¿½±´µÄ×Ö½ÚÊý¡£
¡¡¡¡4. Read·½·¨
¡¡¡¡ÉùÃ÷£ºfunction Read(var Buffer; Count: Longint): Longint; virtual; abstract;
Read·½·¨´Óµ±Ç°Á÷Öеĵ±Ç°Î»ÖÃÆð½«Count¸ö×Ö½ÚµÄÄÚÈݸ´ÖƵ½BufferÖУ¬²¢°Ñµ±Ç°Ö¸ÕëÏòºóÒÆ¶¯Count¸ö×Ö½ÚÊý£¬º¯Êý·µ»ØÖµÊÇʵ¼Ê¶ÁµÄ×Ö½ÚÊý¡£Èç¹û·µ»ØÖµÐ¡ÓÚCount£¬ÕâÒâζ×ŶÁ²Ù×÷ÔÚ¶ÁÂúËùÐè×Ö½ÚÊýǰָÕëÒѾµ½´ïÁËÁ÷µÄβ²¿¡£
¡¡¡¡Read·½·¨ÊdzéÏó·½·¨¡£Ã¿¸öºó¼ÌStream¶ÔÏó¶¼Òª¸ù¾Ý×Ô¼º
Ïà¹ØÎĵµ£º
֮ǰ×öÒ»¸ö³ÌÐò£¬ÓÃListBox¶ÁÈëÒ»¸öÎı¾Îļþ£¬µ«Îı¾ÖÐÓпÕÐУ¬ÎªÁËɾ³ýÆäÖеĿÕÐУ¬ÕÛÌÚÁ˺ó¤Ê±¼ä¡£
Ïȸø³öÒ»¶Î´úÂë¸ø´ó¼Ò¿´
var
i:Integer;
begin
ListBox1.Items.LoadfromFile('data.txt');
for i:=0 to ListBox1.Count - 1 do
begin
  ......
procedure frmMain.CLS; //Ö÷´°Ìå×Ô¶¨ÒåʼþCLS
var i:integer;
begin
for i:=0 to panel5.ControlCount -1 do
begin
if panel5.Controls[i] is TEdit then //Edit×é¼þ
begin
((panel5.Contro ......
Delphi´Ó6.0¾Í¿ªÊ¼Ö§³ÖWeb ServicesµÄ¿ª·¢ºÍÓ¦ÓÃÁË£¬±¾ÎÄͨ¹ýʹÓÃDelphi 7.0µ÷ÓÃÐÂÀË·¢ËͶÌÐŵÄWeb Service½øÐжÌÐÅÓ¦ÓóÌÐò¿ª·¢ÕâһʵÀýÏêϸµÄ½éÉÜÔÚDelphiÖÐÈçºÎ¿ª·¢»ùÓÚWeb ServicesµÄÓ¦ÓÃϵͳ¡£
µÚÒ»²½£¬×¼±¸¹¤×÷£¬Á˽âÐÂÀ˶ÌÐÅWeb Service¡£ÐÂÀË·¢ËͶÌÐŵÄWeb ServiceµØÖ·ÊÇhttp://smsinter.sina.com.cn/ws/smswebs ......
Delphi ¹Ø¼ü×ÖÏê½â[ÕûÀíÓÚ "³È×Ó" µÄÌû×Ó]
absolute
//ËüʹµÃÄãÄܹ»´´½¨Ò»¸öбäÁ¿, ²¢ÇҸñäÁ¿µÄÆðʼµØÖ·ÓëÁíÒ»¸ö±äÁ¿Ïàͬ.
var
Str: string[32];
StrLen: Byte absolute Str;
//Õâ¸öÉùÃ÷Ö¸¶¨Á˱äÁ¿StrLenÆðʼµØÖ·ÓëStrÏàͬ.
//ÓÉÓÚ×Ö·û´®µÄµÚ0¸öλÖñ£´æÁË×Ö·û´®µÄ³¤¶È, ËùÒÔStrLenµÄÖµ¼´×Ö·û´®³¤¶È.
begin ......
ÔÚWIN32ÖеĴ®¿ÚͨѶ£¨Delphi£©
ÓÉÔÚWIN32²Ù×÷ϵͳÖнûÖ¹Ó¦ÓóÌÐòÏóDOSÖÐÄÇÑùÖ±½Ó·ÃÎʼÆËã»úÓ²¼þ£¬Òò´Ë£¬ÎÞ·¨ÏóÒÔǰÄÇÑù²ÉÓÃÖж϶Áд´®¿Ú¡£µ«ÊÇÔÚWIN32ÖÐÎÒÃǿɷ¢²ÉÓÃÁ½ÖÖ·½·¨·ÃÎÊ´®¿Ú£º1¡¢Ê¹ÓÃVBÖеÄMSCOMM´®¿Ú¿Ø¼þ£»2¡¢²ÉÓÃAPIº¯Êý£¬±¾ÎÄÖ÷Òª½éÉܲÉÓÃAPIº¯ÊýʵÏÖ´®¿ÚͨѶ¡£
ÓÉÓÚWM_COMMNOTIFYÏûÏ¢Òѱ»È¡Ïû£¬¹Ê±¾ÎÄ×Ô¶ ......