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:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    24.12. 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 22
    24.12. 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    22.12. 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    21.12. 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    21.12. 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

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

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 14
    Kdo vám letos nadělí dárek?
     (34%)
     (2%)
     (10%)
     (2%)
     (1%)
     (2%)
     (16%)
     (19%)
     (13%)
    Celkem 89 hlasů
     Komentářů: 18, poslední 24.12. 15:30
    Rozcestník

    Dotaz: Decimal separator

    pdp7 avatar 22.10. 07:52 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Decimal separator
    Přečteno: 773×
    Příloha:
    Ahoj, mám tu jeden ovladač rozhraní ASCOM, který čte hodnoty z čidel kolem arduina a zobrazuje v nějakých intervalech na obrazovku PC. Je to psáno v C# a potíž je v tom, že to funguje jen v případě, když je v systému nastavena tečka jako desetinný oddělovač. Jak je tam čárka, tak to hubuje - nesprávný formát vráceného řetězce! Je nějaký elegantní způsob jak tomu říct aby bral jako oddělovač oboje? Snad mě s tím nepošlete kamsi když je to na widle.

    Myslím, že je to na řádcích 121 - 127 ale nejsem si jistý a nevím jestli bude fungovat tohle:

    internal static string SwitchStateVoltage = "0.00".Replace(",",".");

    Odpovědi

    22.10. 10:30 X
    Rozbalit Rozbalit vše Re: Decimal separator
    tak to hubuje - nesprávný formát vráceného řetězce!
    Mues napsat presne co to vraci a zaroven log z toho software?
    pdp7 avatar 22.10. 13:18 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Decimal separator
    Jé Ahoj, abych to nemusel znova opisovat, odkážu na astro-forum.cz kde jsem tam jako Astrolama, příspěvek č. 18 a další. Celý výpis hlášení ve v tom err_ascom.zip a jsou tam i nějaké screeny. Spínač má svůj ovládací program "control center", ale ke stejným funkcím se dá dostat i v Nighttime Imaging 'N' Astronomy (to je ten tmavě červeno-černý screenshot), právě díky tomu ASCOM (standard pro ovládání astronomických zařízení).

    Skutečně po změně oddělovače na tečku v ovládacích panelech všechno funguje normálně, ale v české mutaci widlí je nastavená výchozí čárka.
    22.10. 16:01 ehmmm
    Rozbalit Rozbalit vše Re: Decimal separator
    Takovy provni tip je, ze to bude tenhle radek:

    return Convert.ToDouble(SerialCommands[id]);

    Asi bych si v c# nastavil DecimalSeparator, ve stringu udelal replace dle potreby a pak by to melo fungovat vzdycky.
    22.10. 17:04 X
    Rozbalit Rozbalit vše Re: Decimal separator
    Staci radek 889 v SwitchHardware.cs :
    return Convert.ToDouble(SerialCommands[id]);
    
    upravit na:
    return Convert.ToDouble(SerialCommands[id], CultureInfo.InvariantCulture);
    
    a pridat uplne nahoru:
    using System.Globalization;
    
    Mimochodem ta konverze je tam jeste minimalne jednou tak to muzes opravit i s tim..
    pdp7 avatar 22.10. 21:22 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Decimal separator
    Už to sviští :) Díky
    23.10. 14:00 X
    Rozbalit Rozbalit vše Re: Decimal separator
    Mohl by jsi pls potvrdit na Gitu, ze to chodi?
    pdp7 avatar 23.10. 17:13 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Decimal separator
    Mrkev v zimě, nějak to chlapci nefunguje ten jeho build. Můj jde tak já nevím, napsal jsem mu to tam.
    19.11. 19:28 ml
    Rozbalit Rozbalit vše Re: Decimal separator

    Já bych použil trochu jinou podobu. Vyčetl bych si, jaký decimal separator používá systém a tím bych tečku nahradil.

    Už jsem to tam někdy i udělal (zkusím dohledat, ale nic na tom neni) a při nějakém prohlížení kódu mě docela pobavil komentář "nehradí tečku desetinným oddělovačem, ať je jím cokoliv"

    Funguje mi to ve windows i linuxu a bez ohledu na to, jaký je nastavený jazyk a co je desetinný oddělovač (třeba nahrazuju tečku tečkou, ale to mi může být ukradené). Totéž je možná potřeba udělat s thousend separator.

    Pro váš případ teda třeba takto.

    internal static string SwitchStateVoltage = "0.00".Replace(aktuální_decimal_separátor,".");

    20.11. 10:56 ml
    Rozbalit Rozbalit vše Re: Decimal separator

    Jen doplním moje řešení, ze kterého jsem udělal standard (mám to ve více programech), je to funkce, která jako vstup dostává text a jako výstup vrací double/float, přičemž tohle je zrovna verze, která vrací nulu pokud ten textový řetězec neni platný (tady se to tak hodilo, jinak třeba může vyvolat výjimku nebo použít jinou hodnotu). Jak jsem zjistil, zrovna v tom programu, ze kterého to kopíruju jsem na mnoha místech použil i TimeSeparator a Dateseparator a možná i něco dalšího, ale spíš při převodu hodnot na text.

     

    function gp_val_float (const vstup : string):double;
    begin
    Result := (StrToFloatDef(StringReplace(vstup,'.',DecimalSeparator,(.rfReplaceAll.)),0));
    end;

    Tohle je teda v Lazarusu (syntaxe Pascalu) ale v jakémkoliv jiném jazyce to musí být úplně stejné, pokud mám k dispozici funkci, která očekává řetězec v národním tvaru (já jako programátor ovšem nemůžu tušit, jaké jazykové nastavení bude mít uživatel) a já mám řetězec v nějakém pevném (např. anglickém) tvaru, tak se s tím musím takto popasovat.

    To, že mi kompilátor proměnnou DecimalSeparator označuje jako deprecated je celkem jedno, to jsem už v nějakém programu taky řešil (místo ní je tam nějaká struktura, kde je všechno národní nastavení soustředěné a ta se má přednostně používat), to jsou už jen technické detaily, kde si tohle nastavení zjistit. Jde o ten princip, že namísto natvrdo zadaného řetězce platného pro daný stroj, je lepší udělat to univerzálně.

    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.