abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 14:00 | Zajímavý článek

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 12.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 0
    17.7. 18:44 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 155 (pdf) a Hello World 27 (pdf).

    Ladislav Hagara | Komentářů: 1
    17.7. 16:11 | Nová verze

    Hyprland, tj. kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, byl vydán ve verzi 0.50.0. Podrobný přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 2
    17.7. 15:55 | Komunita

    Patrick Volkerding oznámil před dvaatřiceti lety vydání Slackware Linuxu 1.00. Slackware Linux byl tenkrát k dispozici na 3,5 palcových disketách. Základní systém byl na 13 disketách. Kdo chtěl grafiku, potřeboval dalších 11 disket. Slackware Linux 1.00 byl postaven na Linuxu .99pl11 Alpha, libc 4.4.1, g++ 2.4.5 a XFree86 1.3.

    Ladislav Hagara | Komentářů: 5
    16.7. 21:22 | IT novinky

    Ministerstvo pro místní rozvoj (MMR) jako první orgán státní správy v Česku spustilo takzvaný „bug bounty“ program pro odhalování bezpečnostních rizik a zranitelných míst ve svých informačních systémech. Za nalezení kritické zranitelnosti nabízí veřejnosti odměnu 1000 eur, v případě vysoké závažnosti je to 500 eur. Program se inspiruje přístupy běžnými v komerčním sektoru nebo ve veřejné sféře v zahraničí.

    Ladislav Hagara | Komentářů: 19
    16.7. 16:22 | IT novinky

    Vláda dne 16. července 2025 schválila návrh nového jednotného vizuálního stylu státní správy. Vytvořilo jej na základě veřejné soutěže studio Najbrt. Náklady na přípravu návrhu a metodiky činily tři miliony korun. Modernizovaný dvouocasý lev vychází z malého státního znaku. Vizuální styl doprovází originální písmo Czechia Sans.

    Ladislav Hagara | Komentářů: 26
    16.7. 15:33 | Upozornění

    Vyhledávač DuckDuckGo je podle webu DownDetector od 2:15 SELČ nedostupný. Opět fungovat začal na několik minut zhruba v 15:15. Další služby nesouvisející přímo s vyhledáváním, jako mapyAI asistent jsou dostupné. Pro některé dotazy během výpadku stále funguje zobrazování například textu z Wikipedie.

    bindiff | Komentářů: 8
    16.7. 13:33 | Bezpečnostní upozornění

    Více než 600 aplikací postavených na PHP frameworku Laravel je zranitelných vůči vzdálenému spuštění libovolného kódu. Útočníci mohou zneužít veřejně uniklé konfigurační klíče APP_KEY (např. z GitHubu). Z více než 260 000 APP_KEY získaných z GitHubu bylo ověřeno, že přes 600 aplikací je zranitelných. Zhruba 63 % úniků pochází z .env souborů, které často obsahují i další citlivé údaje (např. přístupové údaje k databázím nebo cloudovým službám).

    Ladislav Hagara | Komentářů: 5
    16.7. 00:11 | Nová verze

    Open source modální textový editor Helix, inspirovaný editory Vim, Neovim či Kakoune, byl vydán ve verzi 25.07. Přehled novinek se záznamy terminálových sezení v asciinema v oznámení na webu. Detailně v CHANGELOGu na GitHubu.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (27%)
     (7%)
     (3%)
     (0%)
     (1%)
     (4%)
    Celkem 410 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: Glib key-value file parser

    10.7.2009 22:00 Premet
    Glib key-value file parser
    Přečteno: 238×

    Zdravím,
    Pokouším se napsat program a spíš se i učím, ale mám problém s tímhle. Nedokážu pořád pochopit jak to pracuje a jedinej zdroj informací je

    http://library.gnome.org/devel/glib/stable/glib-Key-value-file-parser.html
    http://www.gtkbook.com/tutorial.php?page=keyfile
    z čehož mi to pořád není jasný

     

    Mám napsanou funkci pro přidávání záznamů

    void add_record(gchar *name, gchar *last_name, gchar *birth, gchar *name_holiday)
    {
         GKeyFile *keyfile; 
         GKeyFileFlags flags;
         GError *error = NULL;
         gchar *group_name;
    
         keyfile = g_key_file_new();
         flags = G_KEY_FILE_KEEP_COMMENTS;
     
         if (!g_key_file_load_from_file (keyfile, "date_reminder.conf", flags, &error))
         {
             g_error (error->message);
             return;
         }
    
         sprintf(group_name,"%s-%s", name, last_name);
         g_strup(group_name); 
    
         /* Tohle je jenom kontrole záznamů co se tam bude vkládat */
         printf("%s %s %s %s %s\n", group_name,name,last_name,birth,name_holiday);
    
         g_key_file_set_string(keyfile, group_name, "name", name);
         g_key_file_set_string(keyfile, group_name, "last_name", last_name);
         g_key_file_set_string(keyfile, group_name, "birth", birth);
         g_key_file_set_string(keyfile, group_name, "name_holiday", name_holiday);
    
    }
    

    Problém je v tom, že se mi to do souboru neuloží a vůbec nevím co mi tam chybí nebo co mám blbě, takže budu rád za každou radu, protože v tuto chvíli víc asi nevymyslím. Výsledek by měl vypadat asi takhle pro uložení např. Jan, Osel, 4.5.1978, 5.6

    [JAN-OSEL]
    name=Jan
    last_name=Osel
    birth=4.5.1978
    name_holiday=5.6
    

    Díky :)

    Odpovědi

    10.7.2009 22:56 Premet
    Rozbalit Rozbalit vše Re: Glib key-value file parser

    Vyřešeno :)

     

    void add_record(gchar *name, gchar *last_name, gchar *birth, gchar *name_holiday)
    {
         GKeyFile *keyfile; 
         GKeyFileFlags flags;
         GError *error = NULL;
         gchar group_name[40];
         gchar *buffer;
         gsize length;
    
         keyfile = g_key_file_new();
         flags = G_KEY_FILE_KEEP_COMMENTS;
     
         if (!g_key_file_load_from_file (keyfile, "date_reminder.conf", flags, &error))
         {
             g_error (error->message);
             return;   
         }
    
         sprintf(group_name,"%s-%s", name, last_name);
         g_strup(group_name);     
         printf("%s %s %s %s %s\n", group_name,name,last_name,birth,name_holiday);
    
         if(!g_key_file_has_group(keyfile,group_name)) {
             g_key_file_set_string(keyfile, group_name, "name", name);
             g_key_file_set_string(keyfile, group_name, "last_name", last_name);
             g_key_file_set_string(keyfile, group_name, "birth", birth);
             g_key_file_set_string(keyfile, group_name, "name_holiday", name_holiday);
         } else {
             printf("už existuje\n");
         }
    
         buffer = g_key_file_to_data(keyfile, &length, NULL);
         g_file_set_contents ("date_reminder.conf", buffer, length, &error);
    
     
         g_key_file_free(keyfile);
         g_free(buffer);
    }
    10.7.2009 22:58 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Glib key-value file parser
    Kombinácia
    sprintf(group_name,"%s-%s", name, last_name);
    g_strup(group_name);
    je dosť zvláštna. Lepšie je asi niečo ako
    group_name = g_strdup_printf("%s-%s", name, last_name);
    (a potom samozrejme g_free(group_name);)

    GKeyFile neukladá automaticky do súboru, o to sa musíš postarať ty. Funkcia g_key_file_to_data vráti reťazec obsahujúci tie kľúče/hodnoty a potom s tým musíš niečo urobiť (v tvojom prípade to musíš uložiť do toho súboru).
    10.7.2009 23:01 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Glib key-value file parser
    Po tom, ako si to zmenil na pole znakov to sprintf už nie je tak zvláštne, ale aj tak je rozumnejšie používať g_strdup_printf.
    10.7.2009 23:05 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Glib key-value file parser
    A posledná poznámka, funkcia g_strup by sa nemala používať (namiesto nej použi g_utf8_strup alebo g_ascii_strup).
    10.7.2009 23:07 Premet
    Rozbalit Rozbalit vše Re: Glib key-value file parser

    Díky,

    Já teprv s Glib začínám takže ješte všechny ty funkce tak neznám takže nemám přehled :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.