abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 2
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    23.4. 23:22 | IT novinky

    Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.

    Ladislav Hagara | Komentářů: 8
    23.4. 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 23
    23.4. 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 29
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 721 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Jazyk C - vytvoření souboru ve správném kódování

    9.12.2011 12:36 Matěj Vaňátko | skóre: 19 | Brno
    Jazyk C - vytvoření souboru ve správném kódování
    Přečteno: 638×
    Zdravím vás všechny.

    Chci se zeptat. Je možné nějak v jazyce C vytvořit soubor, který bude mít nastaveno na nějaké mnou zadané kódování ? Zkoušel jsem to pomocí setlocale, ale fopen stejně vytvoří ASCII soubor, i když chci UTF-8.
    Jde to nějak vyřešit ??

    Díky moc za pomoc

    Řešení dotazu:


    Odpovědi

    9.12.2011 12:48 Kit
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Funkce fopen vytvoří soubor, tedy posloupnost bytů. Kódování bude takové, jaké do něj uložíš. Možná je budeš muset před uložením konvertovat.
    9.12.2011 13:20 Matěj Vaňátko | skóre: 19 | Brno
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Jo, dobrý, děkuju ;-)

    A má jazyk C nějakou knihovní funkci na překódování souboru ?
    AraxoN avatar 9.12.2011 13:52 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    libiconv, ale glibc iconv... tá prvá mi príde jednoduchšia, ale príliš som sa v tom nevŕtal
    9.12.2011 13:55 l4m4
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Funkce rodiny iconv (iconv_open, iconv, inconv_close) jsou na POSIXových systémech standardně. Na běžné věci postačují. Samozřejmě konvertují data v paměti.

    Kromě toho existují další knihovny, jako třeba librecode.
    9.12.2011 16:33 Matěj Vaňátko | skóre: 19 | Brno
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Díky, mrknu na to.

    Jedná se teda o projekt do školy. A učí nás, abychom tvořili přenositelné programy. Existuje tedy něco, co bude fungovat jak na Windows tak Linuxu, tak *BSD ?
    9.12.2011 17:26 Sten
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    iconv je na Linuxu i BSD. Windows používá vlastní funkce (WideCharToMultiByte ap.). Odlišit tyto systémy lze pomocí #ifdef __unix__, resp. #ifdef _WIN32.
    9.12.2011 21:14 Matěj Vaňátko | skóre: 19 | Brno
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Díky Stene. Mrknu na to ;-)
    9.12.2011 23:07 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    WideCharToMultiByte() bych podle názvu odhadoval spíš na obdobu wcstombs() a spol. než na analogii funkcí z iconv.
    9.12.2011 23:21 l4m4
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Každopádně existuje knihovna win-iconv, která implementuje standardní iconv rozhraní nad těmi Win32 funkcemi. Reálné programy ji používají, takže to je snad dostatečně přenositelné i pro školní projekt...
    10.12.2011 11:37 Sten
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    A co se mrknout do dokumentace (wcstombs, WideCharToMultiByte)? WideCharToMultiByte má navíc parametr, kde se specifikuje kódování.
    10.12.2011 22:36 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Což je celkem nepodstatný detail, na tom, jestli je kódování určeno locale nebo jestli ho zadáváte explicitně jako parametr, až tak moc nezáleží. To podstatné je, že obě funkce slouží ke konverzi mezi multibyte a widechar řetězci, zatímco iconv překládá (multibyte) řetězce mezi různými kódováními.
    11.12.2011 11:23 stefan
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Vhodnou kombinaciou MultiByteToWideChar a WideChatToMultiByte mozete dosiahnut zelanu konverziu. Je to trochu nepohodlne, lebo ked si nie ste isty, kolko pamati alokovat, musite kazdu funkciu zavolat dva krat. Takze budete potrebovat nejaky wrapper, alebo rovno nieco hotove.
    11.12.2011 12:13 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Vhodnou kombinaciou MultiByteToWideChar a WideChatToMultiByte mozete dosiahnut zelanu konverziu

    Jistě. A přesně totéž lze říct i o mbstowcs() a wcstombs(), protože ty funkce slouží ke stejnému účelu. Oproti tomu iconv sice s kódováními pracuje také, ale slouží k něčemu jinému; proto také vůbec neobsahuje podporu widechar řetězců.

    9.12.2011 17:50 ET
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    fyi: existuje BOM, kterym se da naznacit kodovani
    9.12.2011 18:21 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Přidávání BOM do UTF-8 textových souborů je projev ignorance a zlo, které je třeba vymýtit.
    9.12.2011 23:23 l4m4
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    BOM! je zvuk který vydává moje pěst při setkání s obličejem člověka snažícího se nacpat byte order mark do textových souborů...
    10.12.2011 09:22 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Len drobná poznámka: čínsky zákazník od vás nekúpi software, ktorý vo svojich textových súboroch nemá BOM. Teda za predpokladu, že chce dodržať čínske zákony. Čo spravidla chce. A to nehovorím len o súboroch, ktoré sú výstupom toho software-u.
    10.12.2011 10:28 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Len drobná poznámka: čínsky zákazník od vás nekúpi software, ktorý vo svojich textových súboroch nemá BOM.

    Tak, jak jste to napsal, to není pravda zcela určitě.

    10.12.2011 11:03 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Asi som mal povedať, že hovorím o firemnom zákazníkovi. Skrátka mám priamu skúsenosť s tým, že firma musela investovať veľa človekohodín do toho, aby svoju suitu aplikácií upravila tak, aby každý textový súbor mal BOM. Na túto požiadavku firma narazila, keď chcela predávať SW v Číne a vraj vychádza z čínskej legislatívy. Tá možno nie je taká kategorická, ale je v tomto smere dostatočne komplikovaná a nejednoznačná, aby predávajúci bol donútený BOM implementovať.

    Ale netrvám na tom, aby si mi veril. ;-)
    10.12.2011 11:41 l4m4
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Budu-li ti věřit, nemůže se v Číně používat Linux a nejspíš ani žádný jiný Unix, a tudíž je pro tento portál Čína irelevantní ;)

    Navíc bavíme se o BOM v UTF-8, nebo nějakých těch jejich vícebajtových kódováních?
    10.12.2011 13:39 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    Asi som mal povedať, že hovorím o firemnom zákazníkovi.

    Já také mluvím o firemních zákaznících. Firma, kde pracuji, jich má docela dost (i dost velkých) a má i pobočku v Číně. S požadavkem, že by "v každém textovém souboru byl BOM" jsem se nikdy nesetkal a přinejmenším výrazná většina jich tento požadavek nesplňuje. V mnoha případech (třeba u systémových konfiguračních souborů nebo shellových skriptů) by taková absurdita navíc vedla k nefunkčnosti.

    10.12.2011 11:41 Sten
    Rozbalit Rozbalit vše Re: Jazyk C - vytvoření souboru ve správném kódování
    AFAIK to platí jenom pro UTF-16, kde Unicode Consortium BOM doporučuje. Čína ale preferuje UTF-16 nebo GB 18030, protože jsou potom texty kratší.

    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.