Автор Тема: _Array_Dump сохраняет структуру массива  (Прочитано 7842 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн inververs [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 2135
  • Репутация: 462
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
AutoIt: 3.3.10.0+
Версия: 1.1

Категория: Массивы

Описание: Содержит функцию _Array_Dump которая позволяет просмотреть и востановить структуру и содержание любого массива. Результат представляет собой функцию, которая содержит код востановления исходного массива в первоначальный вид. Результат можно сохранить в файл или вывести в консоль. Нет ограничений на размерность массива*. Нет ограничение на вложенность массивов друг в друга - сохраняет структуру вложенности*

Поддерживает все основные типы данных: Int32, Int64, Double, String, Bool, UserFunction, Function, Ptr/HWnd, Binary, Keyword, Array, Null
Не поддерживается: DLLStruct, Object

Пример:
Код: AutoIt [Выделить]
Local $test_6[5] = [True, 123, 'string', Binary('0xDD'),WinGetHandle('')]
ConsoleWrite(_Array_Dump($test_6,'test') & @LF)

Выводит в консоль:
Func dump_test()
    Local $test[5]
    $test[0] = True            ; Bool
    $test[1] = 123             ; Int32
    $test[2] = 'string'        ; String(6)
    $test[3] = Binary('0xDD')  ; Binary(1)
    $test[4] = HWnd('0x00140B0C')     ; Ptr

    Return $test
EndFunc
Global $test = dump_test()

Еще примеры:
(нажмите для показа/скрытия)
Файл: Версия: 1.1

История версий:
(нажмите для показа/скрытия)

Источник: autoit-script.ru
Автор(ы): inververs

Примечание: Спасибо C2H5OH за помощь в создании функции.
* Ограничено только возможностями AutoIT. На данный момент максимально можно создать 64-мерный массив.
* Ограничено максимальным уровнем рекурсии. 3900 лимит для x64 и 1900 лимит для x86


UPD: Новая версия: 1.1

Русское сообщество AutoIt

_Array_Dump сохраняет структуру массива
« Отправлен: Март 18, 2014, 17:59:53 »

Оффлайн C2H5OH [?]

  • Знаю я тут одно место с офигенными циркулями...
  • AutoIt Гуру
  • *****
  • Сообщений: 1473
  • Репутация: 332
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: _Array_Dump сохраняет структуру массива
« Ответ #1, Отправлен: Март 18, 2014, 18:45:18 »
inververs
просто дамп - это не очень интересно. Интересно, наверное, было бы сделать для многомерных массивов _FileWriteFromArrayEx и, соответственно, _FileReadToArrayEx.
 ;D
Рано или поздно все станет понятно, все станет на свои места и выстроится в единую красивую схему, как кружева. Станет понятно, зачем все было нужно, потому что все будет правильно.

Оффлайн inververs [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 2135

  • Автор темы
  • Репутация: 462
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: _Array_Dump сохраняет структуру массива
« Ответ #2, Отправлен: Март 18, 2014, 19:41:07 »
C2H5OH  [?]
Цитировать
Интересно, наверное, было бы сделать для многомерных массивов _FileWriteFromArrayEx и, соответственно, _FileReadToArrayEx.
:) Все в ваших руках.

Эта функция пригодится для отладки скриптов, когда массив заполняется в резуальтате какой то работы, и что бы эту всю работу не повторять каждый раз, можно сдампить массив, что бы затем быстро востановить его содержимое.

Ну еще можно смотреть содержимое массивов любой размерности и любой вложенности.

Решил сделать т.к нет инструментов для просмотра кроме как _array_display, который ограничивается 2мерными массивами.

Буду надеяться что кому нибудь эта библиотека поможет.

Русское сообщество AutoIt

Re: _Array_Dump сохраняет структуру массива
« Ответ #2 Отправлен: Март 18, 2014, 19:41:07 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
1 Ответов
3403 Просмотров
Последний ответ Ноябрь 26, 2009, 04:42:05
от Yashied
2 Ответов
2650 Просмотров
Последний ответ Октябрь 07, 2010, 13:30:11
от Heler
13 Ответов
8965 Просмотров
Последний ответ Октябрь 26, 2010, 14:12:54
от Yashied
2 Ответов
2482 Просмотров
Последний ответ Февраль 25, 2012, 21:32:39
от Afonichev
6 Ответов
3885 Просмотров
Последний ответ Июнь 03, 2012, 13:19:03
от inververs
8 Ответов
4065 Просмотров
Последний ответ Июнь 10, 2013, 17:10:35
от Yashied
3 Ответов
1576 Просмотров
Последний ответ Май 14, 2015, 12:33:50
от firex
2 Ответов
1107 Просмотров
Последний ответ Июнь 28, 2015, 06:40:45
от Zalman1980
8 Ответов
2248 Просмотров
Последний ответ Июль 24, 2015, 15:58:05
от Yashied
6 Ответов
1492 Просмотров
Последний ответ Сентябрь 09, 2016, 07:23:57
от badhabit