博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文件平台我的学习生涯(Delphi篇) - 00
阅读量:5883 次
发布时间:2019-06-19

本文共 3652 字,大约阅读时间需要 12 分钟。

最近一直在查找文件平台之类的问题,今天正好有机会和大家共享一下.

    写在开篇!

    很高兴在CSDN这个平台与宽大的开发者交流心得。

    毕业后,一直在学习Delphi。说来也许好笑:上学时,Pascal测验不及格!所以,天天看看Pascal的书。

    04进了一家私企应用就是Delphi。使自己对在Windows平台应用Delphi进行C/S有了坚定的信念!

    直到现在,我还是以为在Windows平台最好的C/S开发工具非Delphi莫属!

    -------------------------------------------------------------------------------------------------俏丽分割线---------------------------

    年代:2005

    文件:

    

    效果如下图:

    文件和平台

    Unit1.pas

    

    每日一道理
水仙亭亭玉立,兰花典雅幽香,牡丹雍容华贵,梨花洁白无暇……俏丽的花朵总能得到世人的羡慕与赞叹,殊不知,它从一粒小小的种子到最后开花,要历经无数的艰辛与坎坷!我们的成长也是如此。只有做辛勤的“织梦者”,我们的梦想才会成真!
unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, ExtCtrls;type  TForm1 = class(TForm)    Memo1: TMemo;    OpenDialog1: TOpenDialog;    Panel1: TPanel;    Panel2: TPanel;    Button1: TButton;    Button2: TButton;    Button3: TButton;    Button4: TButton;    Button5: TButton;    procedure Button1Click(Sender: TObject);    procedure Button2Click(Sender: TObject);    procedure FormCreate(Sender: TObject);    procedure Button3Click(Sender: TObject);    procedure Button4Click(Sender: TObject);    procedure Button5Click(Sender: TObject);  private    { Private declarations }  public    { Public declarations }  end;var  Form1: TForm1;  filenames:string;  function GetTextFromFile(AFile : String; var ReturnString : string) : boolean;implementation{$R *.dfm}function GetTextFromFile(AFile : String; var ReturnString : string) : boolean;varFileStream : TFileStream;begin  result := false;  if not fileexists(AFile) then exit;  FileStream := TFileStream.Create(AFile,fmopenreadwrite);  try    if FileStream.Size > 0 then    begin      SetLength(ReturnString,FileStream.size);      FileStream.Read(ReturnString[1],FileStream.Size);      result := true;    end  finally    FileStream.Free;  end;end;procedure TForm1.Button1Click(Sender: TObject);var  s : string;  buffer1:PChar;begin  try    OpenDialog1.InitialDir:='d:\';    OpenDialog1.Filter:='数据文件(*.xbf)| *.xbf';    if OpenDialog1.Execute then    begin      filenames:=OpenDialog1.FileName;    end;  except  end;  if GetTextFromFile(filenames,s)  then  begin    // Label1.caption := s; or assign the text to a Label     Memo1.text := s;  end;  end;procedure TForm1.Button2Click(Sender: TObject);begin  Application.Terminate;end;procedure TForm1.FormCreate(Sender: TObject);begin  Form1.Caption:='打开数据文件';  form1.BorderStyle:=bsSingle;end;procedure TForm1.Button3Click(Sender: TObject);begin   Memo1.Lines.SaveToFile(filenames);end;procedure TForm1.Button4Click(Sender: TObject);var  sfi,si:integer;  buff:array [0..4096] of byte;  s:string;begin   try    OpenDialog1.InitialDir:='d:\';    OpenDialog1.Filter:='报文文件(*.rep)| *.rep';    if OpenDialog1.Execute then    begin      filenames:=OpenDialog1.FileName;    end;  except  end;   //sfi:=FileOpen(filenames,fmOpenReadWrite);   //if sfi=-1 then exit; //文件不存在// FileSeek(sfi,where,0); // 指定要读位置,0:从文件头计起   //si:=FileRead(sfi,buff,4096); //读入多少字节的数据   //FileSeek(sfi,where,0); // 指定要写位置,0:从文件头计起,2:从文件尾倒数   //filewrite(sfi,buff,4096);   //FileClose(sfi);   if GetTextFromFile(filenames,s)  then  begin    // Label1.caption := s; or assign the text to a Label     Memo1.text := s;  end;end;procedure TForm1.Button5Click(Sender: TObject);var  Buffer: PChar;begin  GetMem(Buffer,Length(Memo1.Text) + Length(Memo1.Text) + 1);  StrCopy(Buffer, PChar(Memo1.Text));  StrCat(Buffer, PChar(Memo1.Text));  Memo1.Text := Buffer;  FreeMem(Buffer);end;end.

    

    

文章结束给大家分享下程序员的一些笑话语录: 小沈阳版程序员~~~ \n程序员其实可痛苦的了......需求一做一改,一个月就过去了;嚎~ \n需求再一改一调,一季度就过去了;嚎~ \n程序员最痛苦的事儿是啥,知道不?就是,程序没做完,需求又改了; \n程序员最最痛苦的事儿是啥,知道不? 就是,系统好不容易做完了,方案全改了; \n程序员最最最痛苦的事儿是啥,知道不? 就是,系统做完了,狗日的客户跑了; \n程序员最最最最最痛苦的事儿是啥,知道不? 就是,狗日的客户又回来了,程序给删没了!

你可能感兴趣的文章
自定义Docker容器镜像并将其上传到DockerHub中
查看>>
女性视角有利于人工智能平衡发展
查看>>
IT兄弟连 JavaWeb教程 JSP语法
查看>>
原生JS实现最简单的图片懒加载
查看>>
java内存分析工具jstack
查看>>
OSChina 周四乱弹 —— 如何正确殴打男友
查看>>
OSChina 周一乱弹 —— 一个游戏值9999个比特币
查看>>
Centos 同步系统时间和Internet时间
查看>>
sort()
查看>>
ldap接触(2)之修改AD域用户密码
查看>>
数据库的隔离级别
查看>>
在页面中实现一个超简单的“复制按钮”
查看>>
手动运行脚本执行正常而放入crontab调用hadoop命令没有执行成功
查看>>
Android进程间通信机制Binder应用层分析
查看>>
我对Lamport Logical Clock的理解
查看>>
Spark Driver启动流程 代码解析
查看>>
名片管理系统(添加及查询功能)
查看>>
JAVA学习笔记--3.Network IO
查看>>
两台Linux系统之间使用SSH链接
查看>>
单据审批支持通过存储过程校验和控制
查看>>