Всякий раз, когда я иду читать запись из файла в Аде, я всегда получаю сообщение об ошибке. Цель программы состоит в том, чтобы прочитать (из файла) целое число, указывающее, сколько элементов необходимо записать, в фамилию, состоящую (не более) из 12 букв, имя, состоящее (не более) из 12 букв, и значение с плавающей запятой, а затем сохраните их в записи.
Это было из AdaGIDE:
record2.adb:32:04: недопустимый список параметров в вызове (используйте -gnatf для получения подробной информации)
Мой код:
with Ada.Text_IO, Ada.float_Text_IO, ada.Integer_Text_IO;
use Ada.Text_IO, Ada.float_Text_IO, ada.Integer_Text_IO;
procedure Record2 is
TYPE Testrec IS
record
test1 : string (1..12);
test2 : string (1..12);
test3 : float;
END RECORD;
T: Testrec;
Lt: Integer;
numitem: integer;
random1: Ada.Text_IO.File_Type;
begin -- Record2
Ada.Text_IO.Open(File => random1, Mode => Ada.Text_IO.In_File, Name => "info1.dat");
Get_Line(File => random1, Item => Testrec, Last => Lt);
Put(T.test1);
Put(T.Test2);
Put(T.Test3);
end Record2;
содержимое info1.dat (без лишних пробелов и строк, только от "L" до "0":
LastName FirstName 4.00
Мои проблемы - это Get_Line, которую я знаю. Фамилия дополняется пробелами, заполняя 12 символов, то же самое касается имени. Затем поплавок берется за его значение в целом. Что именно я делаю неправильно?