将文件分配给Pascal中的另一个文件

时间:2018-05-31 03:40:23

标签: file pascal

考虑我有一个包含员工信息的文件(员工在该文件上重复)。我必须创建一个相同类型的新文件(具有相同的信息),但我必须做的唯一改变是我需要在变量上累积每个员工(薪水)中常见的数量。 当员工在第一个文件上重复时,我必须在变量上累积薪水,然后将其上传到新文件,当然要检查员工是否在第一个文件中更改了。< / p>

之后我需要更换&#39;带有新文件的第一个文件(包含所有更新的信息)。我不知道该怎么做。这是我的代码:

     Assign(firstFile, 'employeesFile');
     createFirstFile(firstFile);  //this creates the 'old' file
     Assign(NEWfile, 'NEWEmployeesFile');
     updateInformation(firstFile, NEWfile); //this creates the new file, with updated information

接下来我该怎么办?我应用了此代码,但它会抛出一条错误消息:

  

分配(firstFile,NEWfile);

错误:不兼容的类型是arg no。 2:得到文件,预期CHAR

1 个答案:

答案 0 :(得分:1)

错误是因为第二个参数必须是String(与文件类型的变量关联的文件名)。

假设您已经有两个文件,如果您需要进行替换,您应该: 1-删除原始文件。 2-将第二个文件重命名为与上一个(已删除)文件相同的文件名。

1 -

Erase(FirstFile);

删除变量“FirstFile”上的已分配文件。注意:必须分配文件变量,但不能打开。请参阅https://www.freepascal.org/docs-html/rtl/system/erase.html

2-

Rename(NEWFile,'employeesFile');

将指定的文件重命名为第二个参数中指定的新名称。如果目标名称已存在,则无法重命名。同样:必须分配文件变量,但不能打开。有关详细信息,请参阅https://www.freepascal.org/docs-html/rtl/system/rename.html