zoukankan      html  css  js  c++  java
  • 数据存储到流几种形式(数据流 TStream)

    1. 字符串存储到数据流
       s:string;
       l:=length(s);
       Stream.WriteBuffer(Pointer(s)^,length(s) );//字符串地址 及长度
    读取字符串
        Text:string;  
        SetString(Text, nil, iLen);
        Stream.Read(Pointer(Text)^, iLen);

    2.基本数据类型格式都是:数值,字节大小
      Stream.Write(ivalue, SizeOf(Integer));//整型
      Stream.Write(bValue, SizeOf(boolean));//布尔型
      读取
         Stream.Read(iLen, sizeof(Integer));
    3.结构体存储
      type
         TDataHead=record
         id:integer;
         name:string[12];
         bValue:boolean;
         dvalue:double;
         end;
        pTDataHead=^TDataHead;//结构体指针
    var
     DataHead:TDataHead;
     pDataHead:pTDataHead;//指针

     Stream.WriteBuffer(DataHead, sizeof(TDataHead));//结构体
     Stream.WriteBuffer(pDataHead^, sizeof(TDataHead));//结构体 指针
     需要说明的是:结构体套结构体,依然可以使用上述方法存储到数据流内, 反向读取后,数据完整,不会有错误
     读取
       Stream.Read(DataHead, sizeof(TDataHead));//结构体
       Stream.Read(pDataHead^, sizeof(TDataHead));//结构体 指针
    4.数据流存储到流里
     TargetStream.CopyFrom(SourceStream, isize);
    //isize=0,SourceStream所有数据全部存储到TargetStream
    >0 SourceStream内isize字节数据存储到TargetStream内

    TargetStream.WriteBuffer(SourceStream^, isize);//isize 同上


  • 相关阅读:
    随机生成三十个二年级的加减乘除法的题目代码
    学习进度表_四周
    返回一个整数数组中最大子数组的和1
    学习进度表_三周
    四则运算4
    构建之法读书笔记2
    学习进度表_二周
    四则运算3
    四则运算2
    单元测试
  • 原文地址:https://www.cnblogs.com/luckForever/p/7255293.html
Copyright © 2011-2022 走看看