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 lyaml
Dekodowanie 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ło
Moż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)
end
Po uruchomieniu tego skryptu, jego wynik powinien być:
host: localhost
port: 3306
nazwa_użytkownika: użytkownik
hasło: hasło
Kodowanie 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 Doe
Podąż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.