Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизКак записать массив в *.ini файл? Найти похожие ветки
← →
Anthony (2004-04-22 13:26) [0]Hi All!
Люди добрые (профессионалы во всех вопросах), поделитесь соображениями: надо сохранить в .ini файле массив записей типа
S: String;
I1, I2: Integer;
переменной длинны. Есть ли какие-то стандартные решения даной задачи, или его прийдется изобретать самостоятельно?
← →
Anthony (2004-04-22 13:26) [0]Hi All!
Люди добрые (профессионалы во всех вопросах), поделитесь соображениями: надо сохранить в .ini файле массив записей типа
S: String;
I1, I2: Integer;
переменной длинны. Есть ли какие-то стандартные решения даной задачи, или его прийдется изобретать самостоятельно?
← →
PVOzerski © (2004-04-22 13:28) [1][element1]
S=ВАСЯ
I1=100
I2=1000
[element2]
S=Маруся
I1=1
I2=2
← →
PVOzerski © (2004-04-22 13:28) [1][element1]
S=ВАСЯ
I1=100
I2=1000
[element2]
S=Маруся
I1=1
I2=2
← →
ASMiD (2004-04-22 13:33) [2]Под XP будет очень медленно работать.
А почему именно .INI ?
← →
ASMiD (2004-04-22 13:33) [2]Под XP будет очень медленно работать.
А почему именно .INI ?
← →
Андрей Сенченко © (2004-04-22 13:33) [3]Соответственно
TIniFile.WRiteInteger()
TIniFileWriteString()
← →
Андрей Сенченко © (2004-04-22 13:33) [3]Соответственно
TIniFile.WRiteInteger()
TIniFileWriteString()
← →
Anthony (2004-04-22 13:34) [4]М-да... Спасибо. Не успел сам подумать:)
← →
Anthony (2004-04-22 13:34) [4]М-да... Спасибо. Не успел сам подумать:)
← →
Alex* (2004-04-22 13:35) [5]Если размер массива заранее известен циклом
procedure TForm1.WriteIni(ASection, AString, AValue : String);
var
sIniFile: TIniFile;
sPath : String[60];
begin
GetDir(0,sPath);
sIniFile := TIniFile.Create(sPath + "\Traffic.INI");
sIniFile.WriteString(ASection, AString, AValue);; { [Section] String=Value }
sIniFile.Free;
end;
пример всят из рассылки этого же сайта
← →
Alex* (2004-04-22 13:35) [5]Если размер массива заранее известен циклом
procedure TForm1.WriteIni(ASection, AString, AValue : String);
var
sIniFile: TIniFile;
sPath : String[60];
begin
GetDir(0,sPath);
sIniFile := TIniFile.Create(sPath + "\Traffic.INI");
sIniFile.WriteString(ASection, AString, AValue);; { [Section] String=Value }
sIniFile.Free;
end;
пример всят из рассылки этого же сайта
← →
Anthony (2004-04-22 13:38) [6][2] Изначально был текстовый файл со значениями. Добавил новые параметры и словил глюка. А в ini - то же самое, только с названием переменной и читать легче.
← →
Anthony (2004-04-22 13:38) [6][2] Изначально был текстовый файл со значениями. Добавил новые параметры и словил глюка. А в ini - то же самое, только с названием переменной и читать легче.
← →
Anthony (2004-04-22 13:45) [7]Спасибо. То что
sIniFile := TIniFile.Create(sPath + "\Traffic.INI");
sIniFile.WriteString(ASection, AString, AValue);
sIniFile.Free;
- это я знаю. Я имел в виду именно алгоритм размещения в { [Section] String=Value } массива записей и [1] ответ меня устраивает. Разве что кто-то еще сможет предложить что-то.
← →
Anthony (2004-04-22 13:45) [7]Спасибо. То что
sIniFile := TIniFile.Create(sPath + "\Traffic.INI");
sIniFile.WriteString(ASection, AString, AValue);
sIniFile.Free;
- это я знаю. Я имел в виду именно алгоритм размещения в { [Section] String=Value } массива записей и [1] ответ меня устраивает. Разве что кто-то еще сможет предложить что-то.
← →
ASMiD (2004-04-22 13:49) [8]Не очень понятно.
Что ты подразумеваешь под алгоритмом и зачем он нужен?
> алгоритм размещения в { [Section] String=Value }
← →
ASMiD (2004-04-22 13:49) [8]Не очень понятно.
Что ты подразумеваешь под алгоритмом и зачем он нужен?
> алгоритм размещения в { [Section] String=Value }
← →
Гаврила (2004-04-22 14:00) [9]Запиши его в виде HEX (строкой)
← →
Гаврила (2004-04-22 14:00) [9]Запиши его в виде HEX (строкой)
← →
Alex* (2004-04-22 14:14) [10]
> Anthony (22.04.04 13:45) [7]
> Я имел в виду именно алгоритм размещения в
> { [Section] String=Value } массива записей и [1] ответ меня
> устраивает. Разве что кто-то еще сможет предложить что-то.for i:=0 to максимальное значение масива do
begin
WriteIni("String", "str"+IntToStr(i), значение);
WriteIni("Integer", "int"+IntToStr(i), значение);
.... и т.д.
end;
← →
Alex* (2004-04-22 14:14) [10]
> Anthony (22.04.04 13:45) [7]
> Я имел в виду именно алгоритм размещения в
> { [Section] String=Value } массива записей и [1] ответ меня
> устраивает. Разве что кто-то еще сможет предложить что-то.for i:=0 to максимальное значение масива do
begin
WriteIni("String", "str"+IntToStr(i), значение);
WriteIni("Integer", "int"+IntToStr(i), значение);
.... и т.д.
end;
← →
denisww © (2004-04-22 14:45) [11]Ts:TStrings;
Ts:=TStringList.Create;
ts.add(record[1].String);
ts.add(IntToStr(record[1].Integer));
ts.add(FloatToStr(record[1].Float));
ts.add(DateToStr(record[1].Date));
ini.writeString("Array1","record1",ts.DelimitedText);
яп так сделал
← →
denisww © (2004-04-22 14:45) [11]Ts:TStrings;
Ts:=TStringList.Create;
ts.add(record[1].String);
ts.add(IntToStr(record[1].Integer));
ts.add(FloatToStr(record[1].Float));
ts.add(DateToStr(record[1].Date));
ini.writeString("Array1","record1",ts.DelimitedText);
яп так сделал
← →
denisww © (2004-04-22 14:48) [12]и опратно доставал бы
Ts:TStrings;
Ts:=TStringList.Create;
ts.DelimitedText:=ini.readString("Array1","record1","");
← →
denisww © (2004-04-22 14:48) [12]и опратно доставал бы
Ts:TStrings;
Ts:=TStringList.Create;
ts.DelimitedText:=ini.readString("Array1","record1","");
← →
Anthony (2004-04-22 14:55) [13]Круто! И, что удивительно, даже работает. Спасибо.
← →
Anthony (2004-04-22 14:55) [13]Круто! И, что удивительно, даже работает. Спасибо.
← →
denisww © (2004-04-22 14:59) [14]тока большой масив тама не стоит хранить
← →
denisww © (2004-04-22 14:59) [14]тока большой масив тама не стоит хранить
← →
Alex* (2004-04-22 16:01) [15]
> denisww © (22.04.04 14:45) [11]
> Ts:TStrings;
>
> Ts:=TStringList.Create;
> ts.add(record[1].String);
> ts.add(IntToStr(record[1].Integer));
> ts.add(FloatToStr(record[1].Float));
> ts.add(DateToStr(record[1].Date));
> ini.writeString("Array1","record1",ts.DelimitedText);
>
> яп так сделал
мона и так. кому как нравится
← →
Alex* (2004-04-22 16:01) [15]
> denisww © (22.04.04 14:45) [11]
> Ts:TStrings;
>
> Ts:=TStringList.Create;
> ts.add(record[1].String);
> ts.add(IntToStr(record[1].Integer));
> ts.add(FloatToStr(record[1].Float));
> ts.add(DateToStr(record[1].Date));
> ini.writeString("Array1","record1",ts.DelimitedText);
>
> яп так сделал
мона и так. кому как нравится
← →
dmitry99 © (2004-04-22 16:18) [16]
> Alex* (22.04.04 13:35) [5]
> denisww © (22.04.04 14:45) [11]
Чтобы было еще и культурно, надо и про try...finally...end не забывать.
← →
dmitry99 © (2004-04-22 16:18) [16]
> Alex* (22.04.04 13:35) [5]
> denisww © (22.04.04 14:45) [11]
Чтобы было еще и культурно, надо и про try...finally...end не забывать.
← →
Alex* (2004-04-22 17:40) [17]
> dmitry99 © (22.04.04 16:18) [16]
Может быть и нужно для культуры try...finally...end, но я меня и без них все работает
← →
Alex* (2004-04-22 17:40) [17]
> dmitry99 © (22.04.04 16:18) [16]
Может быть и нужно для культуры try...finally...end, но я меня и без них все работает
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.52 MB
Время: 0.038 c