Madrigal5000
Код: local function _ArraySort(a, b)
if tonumber(b) < tonumber(a) then
return false;
else
return true;
end
end
local sINIPath = _SourceFolder.."\\Settings.ini";
local nNextSection = 1;
local sDelimiter = "_"; -- разделитель слова и числа в названии секции
local tTemp = {};
local tSections = INIFile.GetSectionNames(sINIPath);
if tSections then
for i = 1, #tSections do
local nPos = String.ReverseFind(tSections[no][[/no]i], sDelimiter, false);
if nPos ~= -1 then
tTemp[#tTemp + 1] = tonumber(String.Mid(tSections[no][[/no]i], nPos + 1, -1));
end
end
if #tTemp > 0 then
Table.Sort(tTemp, _ArraySort);
nNextSection = tTemp[#tTemp] + 1;
end
end
--// Add section
INIFile.SetValue(sINIPath, "parametr"..sDelimiter..nNextSection, "Value", "Data");
Код: local function _ArraySort(a, b)
if tonumber(b) < tonumber(a) then
return false;
else
return true;
end
end
local sINIPath = _SourceFolder.."\\Settings.ini";
local nNextSection = 1;
local sDelimiter = "_"; -- разделитель слова и числа в названии секции
local tTemp = {};
local tSections = INIFile.GetSectionNames(sINIPath);
if tSections then
for i = 1, #tSections do
local nPos = String.ReverseFind(tSections[no][[/no]i], sDelimiter, false);
if nPos ~= -1 then
tTemp[#tTemp + 1] = tonumber(String.Mid(tSections[no][[/no]i], nPos + 1, -1));
end
end
if #tTemp > 0 then
Table.Sort(tTemp, _ArraySort);
nNextSection = tTemp[#tTemp] + 1;
end
end
--// Add section
INIFile.SetValue(sINIPath, "parametr"..sDelimiter..nNextSection, "Value", "Data");