版面调整调查!
返回列表 回复 发帖

[求助]请问如何读取特定的数据结构(Delphi)

我现在只是Delphi的初级用户
有时实现一些特定的功能时,需自己设计算法读取特定的数据结构,比如在数据库方面,
比如我手里有一个Oracle或sybase的数据表文件,假如我只是用普通的阅读器去读取,多半是一堆乱码。
关于这些东东,我在图书馆也查了不少书,发现用TStream可解诀类似的问题,但都将的
是意思意思而已,就像(Hello Word!)一样,我看了还是不能解决实际问题。
请问有无Delphi的高人能指点偶一下,小弟不胜铭感!
ffdffff

re:定义相应结构,然后读入。

定义相应结构,然后读入。

re:你建立一个Record类型,然后用这...

你建立一个Record类型,
然后用这个类型读取数据就好了。给你个简单的例子:


type
//定义自己的读取结构,这个应该与欲读取文件中的数据结构吻合
MyRecord = Record
No: integer;
Name: string[6];
Delphi:integer;
end;

TForm1 = class(TForm)
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
F: file of MyRecord;//文件类型设置为你自己定义的数据结构类型

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
TestType: MyRecord;
begin
with TestType do
begin
No := 1;
Name := 'Monkey';
Delphi := 60;
end;

//建立一个测试用的数据文件
AssignFile(F, 'c:\test.txt');
Rewrite(F);
write(F, TestType);
CloseFile(F);

//读取这个测试文件
AssignFile(F, 'c:\test.txt');
Reset(F);
read(F, TestType);//这里是使用方法
CloseFile(F);

//在Memo中显示读取出来的结果
Memo1.Lines.Add(IntToStr(TestType.No));
Memo1.Lines.Add(TestType.Name);
Memo1.Lines.Add(IntToStr(TestType.Delphi));

end;

随手写的,应该没有问题,即时有也不影响你对思路的理解。
此处不要企图用记事本去建立一个测试数据文件,因为记事本对待所有的数据都是以字符的形式保存的。而真正的数据文件都有格式对齐的处理。所以需要用代码来建立一个测试文件。
我被捕了。 第一天敌人用富贵引诱我,我没招; 第二天敌人严刑拷打我,我也没招; 第三天敌人送了一个美女给我,我招了; 第四天我还想招,敌人把我杀了!!! My HomePage:www.cstc.net.cn My Blog :www.cnblogs.com/monkeyking Call me at: 29743836

re:楼上的同学真牛!~!~基本功如此扎实,让...

楼上的同学真牛!~!~基本功如此扎实,让人叹为观止啊
没有什么是永恒的,一切就像是十一月的雨~!
转行吧,dephi没前途了
我好几个同事都是从做pb,dephi转过来了
不过我也打算转行了
[GLOW=255,RED,2]谁能阻止我为爱流泪, 谁能让我忘记曾经爱过谁, 谁能缝补我的心碎, 就算阳光不再明媚, 就算整个世界被水包围, 就算真爱从此变得虚伪, 我也不会再为谁流泪,伤悲!!!!![/GLOW]
程序员都没有前途.
严重同意楼上所说的
不过我还不懂什么叫有前途...
如果叫我去做微软的,IBM,Oracle,SUM,google的程序员,我还是很乐意去做那些没前途的工作的
[GLOW=255,RED,2]谁能阻止我为爱流泪, 谁能让我忘记曾经爱过谁, 谁能缝补我的心碎, 就算阳光不再明媚, 就算整个世界被水包围, 就算真爱从此变得虚伪, 我也不会再为谁流泪,伤悲!!!!![/GLOW]
返回列表