gpt4 book ai didi

delphi - 在 Delphi 7 中从文本文件加载信息

转载 作者:行者123 更新时间:2023-12-03 18:11:12 27 4
gpt4 key购买 nike

我正在尝试使用一个程序将姓名和乐谱保存到一个文本文件,然后从另一个程序的文件中加载它。问题在于引用每个名称,而不是仅加载整个文件或仅加载名字。

它是这样保存的:

scores = record
name: string[20];
Score: integer;

procedure TForm1.BtnSaveClick(Sender: TObject);
var
scoresFile: file of scores;
begin
scoresrecord.name := EdtName.Text;
scoresrecord.Score := Score;
assignfile(scoresFile, 'Teacher.txt');
rewrite(scoresFile);
write(scoresFile, scoresrecord);
closeFile(scoresFile);
end;

并使用以下方法加载到字符串网格中:

 scores = record
name: string[20];
Score: integer;

var
ScoreRecord: scores;
scoresFile: file of scores;

StrGrdScores.Cells[0,0]:='Name';
StrGrdScores.Cells[1,0]:='Score';
assignfile(scoresFile, 'C:\Computing\AlgebraNew\Teacher.txt');
reset(scoresFile);
while not Eof(scoresFile) do
read(scoresFile, ScoreRecord);
closeFile(scoresFile);
for I := 1 to StrGrdScores.Row do
StrGrdScores.cells[0,i]:=ScoreRecord.name;

这是我尝试加载姓名的尝试,但它只是将文件中的名字加载到每一行中。当我弄清楚如何加载名称时,加载分数应该是显而易见的。非常感谢任何帮助。

最佳答案

您的保存过程似乎只将一条记录保存到文件中。

您的加载过程将每一行读入同一个变量,覆盖以前的值。从文件中读取值时将值写入网格。

i = 0;
while not Eof(scoresFile) do
begin
read(scoresFile, ScoreRecord);
StrGrdScores.cells[0,i]:=ScoreRecord.name;
StrGrdScores.cells[1,i]:=ScoreRecord.Score;
inc(i);
end;
closeFile(scoresFile);

您可能需要在写入值之前向 stringgrid 添加一行。

关于delphi - 在 Delphi 7 中从文本文件加载信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10175952/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com