Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byla vydána nová verze 7.0 svobodného open source redakčního systému WordPress. Kódové jméno Armstrong bylo vybráno na počest amerického jazzového trumpetisty a zpěváka Louise Armstronga (What A Wonderful World).
V Drupalu byla nalezena a opravena kritická zranitelnost SA-CORE-2026-004 (CVE-2026-9082). Útočník může provádět libovolné SQL dotazy na webech používajících databázi PostgreSQL.
Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost HP.
O víkendu proběhla demopárty Outline 2026. Publikována byla prezentovaná dema. Upozornit lze na 16 bajtové, opravdu šestnáct bajtové, zvukově obrazové demo Wake Up! 16b (YouTube).
Byla vydána nová verze 9.5 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání a na YouTube.
Dnes a zítra probíhá vývojářská konference Google I/O 2026. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).
Canonical vydal Ubuntu Core 26. Vychází z Ubuntu 26.04 LTS a podporováno bude 15 let. Ubuntu Core je minimální neměnný operační systém určený pro vestavěné systémy.
Bylo vydáno OpenBSD 7.9. Po dlouhé době opět se songem: Diamond in the Rough.
Byl vydán Mozilla Firefox 151.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 151 bude brzy k dispozici také na Flathubu a Snapcraftu.
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.
možná vám pomůže man 3 iconv
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ů.
Jasně trochu se v tom ještě neorientuji pod MS-DOS jsem s UNICODE nedělal
v tu dobu nebyl.
iconv()? viz Wikipedie
Jasně to asi bude ono - jdu se na to kouknout co to dělá.....
#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);
}
........
Tiskni
Sdílej: