Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Считать инфу из разделов INI файла в разные массивы.

Ответить
Настройки темы
[решено] Считать инфу из разделов INI файла в разные массивы.

Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Вообщем интересует как считать инфу(все ключи и значения) из разделов INI файла в разные! массивы. По одному массиву для каждого раздела. Или в многомерный массив. Не знаю как лучше.

Я знаю как это сделать ... но если разделов 20 или 30 ... неохота для каждого прописывать.

Отправлено: 17:11, 23-01-2010

 

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Цитата FlatX007:
И как мне вывести в окно сообщения (MsgBox) - первое значение, допустим, из 2 раздела (всего их 5) INI файла - что бы (MsgBox) - находился не в цикле. »
Код: Выделить весь код
$aSecondSection = $aAllSections[2]
MsgBox(64, "", $aSecondSection[1][1])
Цитата FlatX007:
Мне вот так нужно заполнить массив »
Это на мой взгляд сложнее для разбора.

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 10:34, 24-01-2010 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Цитата Creat0R:
Это на мой взгляд сложнее для разбора. »
И всё же можно поправить мой пример ? что бы мне знать.

Отправлено: 11:44, 24-01-2010 | #12


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Цитата FlatX007:
И всё же можно поправить мой пример ? »
Ну он неправильный, как ты будешь различать, к какой секций относится определённое значение?

Можно сделать так например, но это может привести к достижению ограничения в размерности массива:

Код: Выделить весь код
#Include <Array.au3>

;~ $sPathIni = @ScriptDir & '\Original Library\Olf.ini'
$sPathIni = @WindowsDir & "\win.ini"
$aSectionNames = IniReadSectionNames($sPathIni)

If Not (@error) Then
    Dim $aArray[$aSectionNames[0]+1][1]

    For $i = 1 To $aSectionNames[0]
        $aIniRead = IniReadSection($sPathIni, $aSectionNames[$i])

        If Not (@error) Then
            ReDim $aArray[$aSectionNames[0]+1][$aIniRead[0][0]+1]
            $aArray[$i][0] = $aSectionNames[$i]

            For $i1 = 1 To $aIniRead[0][0]
                $aArray[$i][$i1] = $aIniRead[$i1][1]
            Next
        EndIf
    Next

    _ArrayDisplay($aArray)
EndIf

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:42, 24-01-2010 | #13


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Или так, где имя секций повторяется для всех её значений:

Код: Выделить весь код
#Include <Array.au3>

;~ $sPathIni = @ScriptDir & '\Original Library\Olf.ini'
$sPathIni = @WindowsDir & "\win.ini"
$aSectionNames = IniReadSectionNames($sPathIni)

If Not (@error) Then
    Dim $aArray[1][3]

    For $i = 1 To $aSectionNames[0]
        $aIniRead = IniReadSection($sPathIni, $aSectionNames[$i])

        If Not (@error) Then
            For $i1 = 1 To $aIniRead[0][0]
                $aArray[0][0] += 1
                ReDim $aArray[$aArray[0][0]+1][3]

                $aArray[$aArray[0][0]][0] = $aSectionNames[$i]
                $aArray[$aArray[0][0]][1] = $aIniRead[$i1][0]
                $aArray[$aArray[0][0]][2] = $aIniRead[$i1][1]
            Next
        EndIf
    Next

    _ArrayDisplay($aArray)
EndIf

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:00, 24-01-2010 | #14


Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Цитата Creat0R:
как ты будешь различать, к какой секций относится определённое значение? »
Так я изначально знаю какие секции будут в INI файле , имена ключей мне не нужны, нужна секция и все значения ключей в ней.

Вот теперь то что нужно !

Отправлено: 14:14, 24-01-2010 | #15


Новый участник


Сообщения: 8
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Creat0R:
Или так, где имя секций повторяется для всех её значений: »
Кто подскажет как работать с полученной инфой? Найти допустим Имя секций, если такое имеется то найти там параметр, если параметр существует, то считать значение параметра в переменную. имена задаются вручную,только значение параметра надо Узнать.

Отправлено: 19:42, 23-12-2010 | #16


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Цитата Andress:
Кто подскажет »
В этой теме никто, т.к оно не связано.

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 19:52, 23-12-2010 | #17


Новый участник


Сообщения: 8
Благодарности: 0

Профиль | Отправить PM | Цитировать


Не понел юмора . Может тогда хоть направление какое?

Отправлено: 20:16, 23-12-2010 | #18


Аватара для kaster

Старожил


Сообщения: 367
Благодарности: 91

Профиль | Отправить PM | Цитировать


Andress, создавай новую тему. правило простое: один вопрос - одна тема

-------
Русское сообщество пользователей AutoIt
autoit@conference.jabber.ru - Конференция на jabber.ru


Отправлено: 22:57, 23-12-2010 | #19



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Считать инфу из разделов INI файла в разные массивы.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
HDD - [решено] Проблема винчестера и разделов (потеря разделов) SylverFuntik Накопители (SSD, HDD, USB Flash) 23 06-04-2010 01:42
Разное - Параметр /3GB файла boot.ini в Windows XP. Mixa7 Microsoft Windows 2000/XP 17 24-02-2010 13:08
[решено] синхронизировать время из ini файла Lodoss AutoIt 1 26-03-2009 10:23
Загрузка - [решено] Что должно быть в параметре load файла SYSTEM.INI? Котяра Microsoft Windows 2000/XP 3 12-12-2008 21:07
Разные имена разделов реестра при каждой установке Windows Solitude Автоматическая установка Windows 2000/XP/2003 5 11-02-2005 13:53




 
Переход