Lua:
Praca z YAML
Jak?
Lua nie posiada wbudowanego wsparcia dla YAML, ale można pracować z plikami YAML, używając bibliotek firm trzecich, takich jak lyaml. Ta biblioteka umożliwia kodowanie i dekodowanie danych YAML z Lua. Najpierw musisz zainstalować lyaml za pomocą LuaRocks, managera pakietów Lua:
luarocks install lyamlDekodowanie YAML:
Załóżmy, że masz następującą zawartość YAML w pliku o nazwie config.yaml:
bazy_danych:
host: localhost
port: 3306
nazwa_użytkownika: użytkownik
hasło: hasłoMożesz zdekodować ten plik YAML do tablicy Lua za pomocą następującego kodu:
local yaml = require('lyaml')
local plik = io.open("config.yaml", "r")
local zawartość = plik:read("*all")
plik:close()
local dane = yaml.load(zawartość)
for k,v in pairs(dane.bazy_danych) do
print(k .. ": " .. v)
endPo uruchomieniu tego skryptu, jego wynik powinien być:
host: localhost
port: 3306
nazwa_użytkownika: użytkownik
hasło: hasłoKodowanie YAML:
Aby zakodować tablice Lua do formatu YAML, używasz funkcji dump dostarczonej przez lyaml. Rozważając, że chcesz stworzyć reprezentację YAML następującej tablicy Lua:
local dane = {
strona_internetowa = {
nazwa = "Przykład",
właściciel = "Jane Doe",
metadane = {
data_utworzenia = "2023-01-01",
tagi = {"blog", "personalny", "lua"}
}
}
}
local yaml = require('lyaml')
local dane_yaml = yaml.dump({dane})
print(dane_yaml)Wyjście YAML będzie:
- strona_internetowa:
metadane:
data_utworzenia: '2023-01-01'
tagi: [blog, personalny, lua]
nazwa: Przykład
właściciel: Jane DoePodążając za tymi wzorcami, programiści Lua mogą efektywnie zarządzać danymi YAML dla różnorodnych aplikacji. Te operacje z YAML są kluczowe dla rozwoju wszechstronnych aplikacji Lua, które wchodzą w interakcje z innymi częściami systemu lub bezpośrednio z innymi systemami.