如何使用字符串值访问对象

时间:2018-10-11 13:43:12

标签: string file ada

我有一个文件,我想读取该文件并将新值应用于对象。如何使用字符串名称查找所需的对象并更新值。请注意,file.txt中的内容可能超过1000行,并且顺序会更改,因此我没有if语句来检查每个条件。

file.txt
>A 1
>B 2
>D 5

desired result
Sample.A := 1;
Sample.B := 2;
Sample.D := 5;

1 个答案:

答案 0 :(得分:1)

一种方法是将您的对象声明为由枚举类型(其值为标识符)索引的数组。例如,如果标识符是符号A到Z,则可以将数组定义为:

subtype Index is Character range 'A'..'Z';
type Collection is array(Index) of Integer;
Idx : Index;
Value : Integer;
The_Collection : Collection;

while not End_Of_File(Input_File) loop
   Get(Idx);
   Get(Value);
   Skip_Line;
   The_Collection(Idx) := Value;
end loop;

当然,您将需要“附带”适当的I / O包。