Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> lua, как правильно создать массив из txt файла, Считать txt файл и получить массив ключ + значение
фонарик
сообщение 6.2.2024, 6:28
Сообщение #1


****

Apprentice
Сообщений: 145
Регистрация: 23.11.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 14.305



Здравствуйте. Подскажите пожалуйста, как можно считать текстовый файл формата:
Код
item = "Предмет_01", color = "112233"
item = "Предмет_02", color = "445566"
item = "Предмет_03", color = "778899"
item = "Предмет_04", color = "556644"
чтобы получить в итоге массив вида, к которому можно обращаться по ключу и значению?
Код
Items = {
{item = "Предмет_01", color = "445566"},
{item = "Предмет_02", color = "445566"},
{item = "Предмет_03", color = "778899"},
{item = "Предмет_04", color = "556644"}
}


Пытаясь придумать свой фирменный способ, почему-то нагнетает печаль и мысли о том, "кто же так делает?!.."
Код
--lua
log("clear")
path =  homepath() .. "Scripts\\Items.txt"
local file = io.open(path, "r")
Items = {}
for line in file:lines() do
    table.insert (Items, {line}) -- что-то здесь должно быть поумнее
end
file:close()
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Madeus
сообщение 6.2.2024, 8:22
Сообщение #2


****

Apprentice
Сообщений: 283
Регистрация: 19.11.2019
Группа: Пользователи
Наличность: 8459
Пользователь №: 19.451
Возраст: 32



Код
--lua
log("clear")
path =  "E:\\Test\\test.txt"
local file = io.open(path, "r")
local items = {}
local content = file:read("*a")
for item, color in content:gmatch('item = "(.-)", color = "(.-)"') do
    table.insert(items, {item = item, color = color})
end
file:close()
for _, v in ipairs(items) do
    log(v.item, v.color)
end
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
фонарик
сообщение 6.2.2024, 18:12
Сообщение #3


****

Apprentice
Сообщений: 145
Регистрация: 23.11.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 14.305



Аха, понял (IMG:style_emoticons/default/smile.gif) Спасибо, товарищ Madeus, что поделились знаниями и опытом (IMG:style_emoticons/default/thanks.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 19.4.2024, 9:24
Designed by Nickostyle