⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bcjq040.txt

📁 c++ builder 的一些txt文档
💻 TXT
📖 第 1 页 / 共 2 页
字号:
            try
 
            {
 
            char buffer[10];
 
            GetNextRequest(buffer); // GetNextRequest must be a thread-safe  
            method
 
            
 
            // write the request to the server
 
            pStream->Write(buffer, strlen(buffer) + 1);
 
            // continue the communication (eg read a response from the server)
 
            ...
 
            }
 
            catch (Exception &E)
 
            {
 
            if (!E.ClassNameIs("EAbort"))
 
            //you must write HandleThreadException
 
            Synchronize(HandleThreadException());
 
            }
 
            }
 
            }
 
            __finally
 
            {
 
            delete pStream;
 
            }
 
            }
 
            
 
            
 
            五. TBlobStream介绍
 
            方法
 
            Read:读取数据到缓冲区中
 
            Seek:定位流的当前位置
 
            TBlobStream:根据一个TBlobField字段建立一个流对象
 
            Truncate:从当前位置截短流对象
 
            Write:将缓冲区中的数据写入到流对象中
 
            TBlobStream流对象只用于对TblobField进行操作,注意,当改变了数据集对象的当前记录时,要重新建立TBlobStream对象并在使用完后将之删除。
 
            读取Blob字段的数据
 
            void __fastcall TForm1::Button1Click(TObject *Sender)
 
            {
 
            int MemSize;
 
            char *Buffer;
 
            TBlobStream *Stream;
 
            if (!Query1->Eof)
 
            Query1->Next();
 
            Stream = new TBlobStream((TBlobField  
            *)Query1->FieldByName("Notes"), bmRead);
 
            try
 
            {
 
            MemSize = Stream->Size + 1; // add one for null terminator
 
            Buffer = new char[MemSize]; // Allocate the memory.
 
            try
 
            {
 
            Stream->Read(Buffer, MemSize); //Read Notes field into buffer.
 
            Memo1->SetTextBuf(Buffer); // Display the buffer's contents.
 
            }
 
            catch (...)
 
            {
 
            delete Buffer;
 
            throw;
 
            }
 
            delete Buffer;
 
            }
 
            catch (...)
 
            {
 
            delete Stream;
 
            throw;
 
            }
 
            delete Stream;
 
            }
 
            
 
            六. TOleStream介绍
 
            方法
 
            TOLEStream:通过一个流界面建立Ole流对象
 
            Read:从流对象中读数据到缓冲区中
 
            Seek:定位流的当前位置
 
            Write:从缓冲区中将数据写入到流对象中
 
            
 
            七. TStringStream介绍
 
            属性
 
            DataString:流对象的实际存储字符串
 
            Size:流对象大小
 
            方法
 
            Read:从流对象中读数据到缓冲区中
 
            ReadString:以字符串形式返回流中指定数据
 
            Seek:定位流的当前位置
 
            TStringStream:根据一个字符串建立字符串流对象
 
            Write:从缓冲区中将数据写入到流对象中
 
            WriteString:将字符串中数据写入到流中
 
            
 
            八. TFileStream介绍
 
            方法
 
            TFileStream:根据文件名建立或打开一个文件,并建立相应的文件流对象
 
            例:TFileStream *fsBootINI = new  
            TFileStream(“c:\\boot.ini”,fmOpenRead);
 
            
 
            
 
            九. TMemoryStream介绍
 
            方法
 
            Clear:清除流对象中所有数据
 
            LoadFromFile:从文件中读入数据到流对象中
 
            LoadFromStream:从其它流中读入数据
 
            SetSize:设置流对象的大小
 
            Write:从缓冲区中写数据到内存流中
 
            
 
            十. TClientBlobStream介绍
 
            方法
 
            TClientBlobStream:根据TblobField对象建立一个流对象
 
            Truncate:截短流
 
            Write:将缓冲区中数据写入到流中
 
            该流对象用来操作TClientDataSet数据集中的BLOB类型的字段
 
            
 
            十一. TResourceStream介绍
 
            方法
 
            TResourceStream:根据EXE文件名柄或DLL文件句柄和资源描述生成流对象
 
            Write:不支持写操作,产生异常
 
            
 
            十二. 与流对象相关的对象介绍
 
            以上对象用于将组件写入到流对象中或是从流对象生成组件
 
            流对象中的方法ReadComponent 和WriteComponent在实现时就是使用TReader和TWriter来实际操作的。
 
            
 
            十三. 与流对象相关的函数
 
            extern PACKAGE void __fastcall ObjectTextToBinary(TStream* Input,  
            TStream* Output);
 
            extern PACKAGE void __fastcall ObjectBinaryToText(TStream* Input,  
            TStream* Output);
 
            extern PACKAGE void __fastcall ObjectTextToResource(TStream* Input,  
            TStream* Output);
 
            extern PACKAGE void __fastcall ObjectResourceToText(TStream* Input,  
            TStream* Output);
 
            以上函数都是针对存储对象的流而言的,在流之间转换流中所存储对象的描述方式。
 
            
 
            第三章 流对象的应用领域
 
            
 
            一.  
            使用统一的流的概念来操作各种不同类型的资源。
 
            二.  
            通过流将资源保存到不同的介质上,如将组件保存到文件中,将ICON资源调入内存等。
 
            三. 简化一些对象的操作,如TBlobStream和TClientBlobStream
 
            四. 实现一些原来不好实现的功能,如TWinSocketStream实现超时操作 
            
---陈俊明---     
                             
                           
                               
                       
                             
                               
                             
                  if (ad==1) {document.write(''+'');}             
                  if (ad==2) {document.write(''+'');}             
                  if (ad==3) {document.write(''+'');}             
                                               
                             
                           
                         
                       
                  
                   
                     
                       
                     
                     
                         
                     
                   
                      
                    
                  
                
              
              
                
                  
                    
                      
            C++ Builder开发者®           
              2000年06月01日 站长:唐朝           
                     
                   
                 
               
               
                 
               
             
             
           
           
           
           

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -