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 11:33 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2026, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 3
    včera 02:44 | Nová verze

    Byla vydána nová verze 0.17.0 programovacího jazyka Zig (Codeberg, Wikipedie). Přispělo 206 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    2.10. 21:00 | Zajímavý projekt

    Open-source projekt OpenDLSS-NR je 'bitově přesná reimplementace' neuronové rendrovací sítě DLSS 5 od společnosti NVIDIA, jenže pro grafické API Vulkan (DLSS slouží k vylepšování klasickým způsobem vyrendrovaných snímků pomocí lokálních modelů umělé inteligence, a to v reálném čase). Projekt není nijak spojen se společností NVIDIA, je pouze pro OS Windows a natrénované váhy modelu si uživatelé musí obstarat sami. Zdrojový kód je k dispozici na GitHubu, pod licencí MIT s výjimkou pro komponenty třetích stran.

    AfD 💙 | Komentářů: 1
    2.10. 20:55 | Zajímavý software

    Společnost Cloudflare představila Clef a Clef-Flash, open-source rozhodovací modely určené pro rychlou a konzistentní klasifikaci vstupů. Na rozdíl od klasických LLM vracejí tyto modely deterministické striktně typované strukturované odpovědi s exaktními pravděpodobnostmi, tedy odpovědi ve stylu přelomového modelu Jev.

    … více »
    AfD 💙 | Komentářů: 2
    2.10. 04:44 | Nová verze

    Byla vydána beta verze Ubuntu 26.10 s kódovým názvem Stonking Stingray. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.10 mělo vyjít 15. října 2026.

    Ladislav Hagara | Komentářů: 1
    1.10. 22:22 | Nová verze

    Byla vydána verze 1.99.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 5
    1.10. 18:11 | Komunita

    Od 13. do 15. října proběhne v Praze OpenSSL Conference 2026. Na YouTube lze zhlédnout videozáznamy přednášek z loňského roku.

    Ladislav Hagara | Komentářů: 0
    1.10. 17:22 | IT novinky

    Eben Upton oznámil další zdražení jednodeskových počítačů Raspberry Pi. Tentokrát 2 GB varianty o 12,50 dolarů. Nově 2 GB Raspberry Pi 4 stojí 67,50 dolarů a 2 GB Raspberry Pi 5 stojí 77,50 dolarů.

    Ladislav Hagara | Komentářů: 6
    1.10. 13:00 | Nová verze

    OpenMandriva ROME, tj. průběžně aktualizovaná (rolling) edice linuxové distribuce OpenMandriva, byla vydána ve verzi 26.09. Vedle Flatpaku také s podporou Snapu.

    Ladislav Hagara | Komentářů: 0
    1.10. 04:33 | Zajímavý software

    Edison Design Group po více než 30 letech zveřejnil zdrojový kód svého EDG C/C++ front-endu. Ten proslul širokou podporou standardů C++ a kompatibilitou s dialekty kompilátorů od Microsoftu, GNU, Clangu, Sunu a dokonce i s prehistorickým cfrontem. EDG byl použit například v kompilátoru Intel C++ Classic, kompilátoru NVCC od firmy NVIDIA pro platformu CUDA nebo v našeptávači kódu IntelliSense v produktech společnosti Microsoft. Projekt nyní spravuje organizace The C++ Alliance a kód je dostupný pod licencí Apache 2.0, doplněnou o výjimky projektu LLVM.

    AfD 💙 | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2790 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Převod UTF-8 na cp1250 v C

    4.2.2009 11:16 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Převod UTF-8 na cp1250 v C
    Přečteno: 2898×

    Potřebuji převést string - řetězec znaků z UTF-8 na cp1250 a nevím jak na to - jakou funkci použít v C.

    Kdyby to bylo pouze překodování znaku je to bez problému, ale problém je že je to UTF-8 takže tam znak může být různě dlouhý a na to nevím jakou funkci v C použít - nikdy jsem s unicode nedělal.

    Nebo to převést na pevnou délku tj UTF-8 na UNICODE (UTF-16) a porovnávat to potom a nahrazovat ?

    Prostě mám program který mi převádí data z linuxu pro PocketPC a potřebuji překodovat znakovou sadu.

    Odpovědi

    4.2.2009 11:38 jiri-j
    Rozbalit Rozbalit vše Re: Převod UTF-8 na cp1250 v C

    možná vám pomůže man 3 iconv

    4.2.2009 14:26 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Převod UTF-8 na cp1250 v C
    Nebo to převést na pevnou délku tj UTF-8 na UNICODE (UTF-16) a porovnávat to potom a nahrazovat ?

    BTW., UTF-16 není Unicode (je to formát kódování používané pro kódování Unicode) a UTF-16 nemá pevnou délku znaků.

    4.2.2009 19:58 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Převod UTF-8 na cp1250 v C

    Jasně trochu se v tom ještě neorientuji pod MS-DOS jsem s UNICODE nedělal :-) v tu dobu nebyl.

    Limoto avatar 4.2.2009 16:48 Limoto | skóre: 32 | blog: Limotův blog
    Rozbalit Rozbalit vše Re: Převod UTF-8 na cp1250 v C

    iconv()? viz Wikipedie

    4.2.2009 19:59 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Převod UTF-8 na cp1250 v C

    Jasně to asi bude ono - jdu se na to kouknout co to dělá.....

    26.2.2009 13:52 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Převod UTF-8 na cp1250 v C
    Tak jsem tam dodělal funkci kterou jsem vykrad z jednoho příkladu:
    
    #define DELKA_POZNAMKY 256
    
    char convStr[DELKA_POZNAMKY];
    
    ...........
    
    /* převod kodování */
    
    char * UTF8toWindows (char * from)
    {
        char *p1, *p2;
        iconv_t i;
        size_t fromlen, tolen;
        size_t iconv_value;
    
        errno=0;
    	
        if (strlen(from) > DELKA_POZNAMKY) {
    	perror("ICONV: Poznámka je moc dlouhá.");
            exit(errno);
        }
    
    
        memset(convStr,0,sizeof(convStr));
        tolen = fromlen = strlen(from);
        p1 = (char *)from;
        p2 = (char *)convStr;
    
        i = iconv_open("WINDOWS-1250", "UTF-8");
        if (i == (iconv_t) -1) {
            if (errno == EINVAL)
    	  perror("ICONV: Nepodporuji převod z UTF-8 do CP1250.");
    	else
    	  perror("ICONV: Chyba převodu kodování.");
              exit(errno);
    
        }
    
    
    
        /* Převod */
        /* iconv_value = iconv(i, (const char **)&p1, &fromlen, &p2, &tolen); */
        iconv_value = iconv(i, &p1, &fromlen, &p2, &tolen);
        if (iconv_value == (size_t) -1) {
            perror ("ICONV: Převod kodování se nepovedl.");
    	exit(errno);
        }
        iconv_close(i);
        return(convStr);
    }
    
    ........
    
    

    Založit nové vlákno • Nahoru

    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.