, MassIn2.M, MassIn2.N);
Massin1: = MAssIn2;
SetLength (Massin2.Mass, TempMass.M, TempMass.N);
MAssIn2: = TempMass;
end;
end;
procedure TMainForm.VS_LoadData (var InMAss: TVS_MassData);
// Завантажуємо дані з файлу в Масив InMAss
Var F: TextFile;// Описали змінну роботи з текстовим файлом
RezStr: String;
CurRow,
MaxCol,
MaxRow,
CorCol: Integer;
begin
OpenDialog.DefaultExt : = '*. Txt';// Розширення файлів по умочлчанію
OpenDialog.InitialDir : = ExtractFilePath (Application.ExeName);// Відкриваємо каталог, в якому запущена наша програма
MaXcol: = 0;
;
If OpenDialog.Execute Then
Begin// Якщо користувач натиснув на ОК і вибрав файл - починаємо завантаження
AssignFile (F, OpenDialog.FileName);
If FileExists (OpenDialog.FileName) Then
Reset (f)// Файл є, відкриваємо
Else Exit;// Файлу нету, виходимо
CurRow: = 0;
VS_GetRazmOnFile (OpenDialog.FileName, MaxCol, MaxRow);
SetLEngth (InMAss.Mass, MaxRow, MaxCol);
While Not Eof (F) Do
Begin
REadLn (F, RezStr);
VS_InitMassInStr (RezStr, CurRow, InMAss);
// ResultMemo.Lines.Add (RezStr);
Inc (CurRow);
end; {While Not Eof (F) Do}
InMass.M: = MaxRow;
InMAss.N: = MaxCol;
VS_ShowMassToMemo ('Успішно завантажений', InMAss);
end; {If OpenDialog.Execute Then}
end;
procedure TMainForm.N9Click (Sender: TObject);
begin
VS_LoadData (MassA);
end;
procedure TMainForm.VS_InitMassInStr (InStr: String; CurRow: Integer;
var InMass: TVS_MassData);
// Формуємо рядок елементів масиву.
Var
N: Integer;
RezStr: String;
CurCol: Integer;
begin
inStr: = Trim (InStr);// Видалили прогалини з обох кінців рядка
CurCol: = 0;
While Length (InStr)> 0 Do
Begin// Запускаємо цикл доти, поки рядок має значення
N: = Pos (# 32, InStr);// Знайшли найближчий пробіл
If N <> 0 Then
Begin// Дійсно у нас знайшовся прьблел
RezStr: = Copy (inStr, 1, N);
Delete (inStr, 1, N);
RezStr: = Trim (RezStr);// Видалили зайві пробіли
Try// Включаємо обробку помилок
InMass.Mass [CurRow, CurCol]: = StrtoFloat (RezStr);// Привласнюємо елемент масиву з рядків
except// Якщо аварія
InMass.Mass [CurRow, CurCol]: = 0;// Привласнюємо елемнтов 0
end;
Inc (CurCol) ;//Перейшли до слід. стобцу масиву
end {If N <> 0 Then}
Else
// Пробілу нету, можливо, це останній символ
If Length (InStr)> 0 Then
Begin// Є значення
Try// Включаємо обробку помилок
InMass.Mass [CurRow, CurCol]: = StrtoFloat (InStr);// Привласнюємо ел...