国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

關于DBGRIDEH導出數據到CSV

2019-11-18 18:21:19
字體:
來源:轉載
供稿:網友

在通常情況下使用DBGRIDEH導出的到CSV中的數據是這個樣子的

"a","b","c"

可能我們并不希望它這樣顯示,有可能希望它顯示成種狀態

a,b,c

如果想這樣,我們可以修改DBGRIDEH里面的DBGridEhImpExp.pas文件

具體修改如下:增加一個自己的導出到CSV的類

 { TMyDBGridEhExportAsCVS }

  TMyDBGridEhExportAsCVS = class(TDBGridEhExportAsText)
  PRivate
    FSeparator: Char;
  protected
    procedure CheckFirstCell; override;
    procedure WriteTitle(ColumnsList: TColumnsEhList); override;
    procedure WriteDataCell(Column: TColumnEh; FColCellParamsEh: TColCellParamsEh); override;
    procedure WriteFooterCell(DataCol, Row: Integer; Column: TColumnEh; AFont: TFont;
      Background: TColor; Alignment: TAlignment; Text: String); override;
  public
    constructor Create; override;
    property Separator: Char read FSeparator write FSeparator;
  end;

{ TMyDBGridEhExportAsCVS }

procedure TMyDBGridEhExportAsCVS.CheckFirstCell;
var s: String;
begin
  if FirstCell = False then
  begin
    s := Separator;
    StreamWriteString(Stream, s);
//    Stream.Write(PChar(s)^, Length(s))
  end else
    FirstCell := False;
end;

constructor TMyDBGridEhExportAsCVS.Create;
begin
  Separator := ',';
  inherited Create;
end;

procedure TMyDBGridEhExportAsCVS.WriteDataCell(Column: TColumnEh; FColCellParamsEh: TColCellParamsEh);
var s: String;
begin
  CheckFirstCell;
  s := FColCellParamsEh.Text;
  StreamWriteString(Stream, s);
//  Stream.Write(PChar(s)^, Length(s));
end;

procedure TMyDBGridEhExportAsCVS.WriteFooterCell(DataCol, Row: Integer;
  Column: TColumnEh; AFont: TFont; Background: TColor;
  Alignment: TAlignment; Text: String);
var s: String;
begin
  CheckFirstCell;
  s := Text;
  StreamWriteString(Stream, s);
//  Stream.Write(PChar(s)^, Length(s));
end;

procedure TMyDBGridEhExportAsCVS.WriteTitle(ColumnsList: TColumnsEhList);
var i: Integer;
  s: String;
begin
  CheckFirstRec;
  for i := 0 to ColumnsList.Count - 1 do
  begin
    s := ColumnsList[i].Title.Caption;
    if i <> ColumnsList.Count - 1 then
      s := s + Separator;
    StreamWriteString(Stream, s);
//    Stream.Write(PChar(s)^, Length(s));
  end;
end;

 

Good luck!

 


上一篇:數據完整性(數據的似真性而非正確或者錯誤)

下一篇:公布TstringGrid增強控件TcbStrGrid源碼,帶CheckBox的TStringGrid控件

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 胶州市| 景洪市| 湘乡市| 云南省| 轮台县| 永城市| 梁山县| 安乡县| 于都县| 伊宁市| 莲花县| 荥经县| 临西县| 日照市| 临漳县| 兴山县| 双流县| 陕西省| 黄平县| 贡觉县| 南漳县| 永清县| 道真| 贡嘎县| 云浮市| 永嘉县| 彰化市| 龙山县| 南投县| 广灵县| 澜沧| 嵊州市| 湘阴县| 米脂县| 长治市| 永寿县| 湘潭县| 高碑店市| 塘沽区| 北安市| 甘孜|