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

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 16:33 | IT novinky

    Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.

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

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

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

    Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.10. 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 3
    6.10. 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    6.10. 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    6.10. 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    6.10. 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    6.10. 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (18%)
     (16%)
     (16%)
    Celkem 191 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Dotaz: zamena hodnoty v tagu jinou hodnotou z jineho tagu.

    29.9.2009 13:55 anon123 | skóre: 35 | blog: ganomi
    zamena hodnoty v tagu jinou hodnotou z jineho tagu.
    Přečteno: 461×

    Ahoj.

    Hledam nejjednodussi zpusob zameny hodnoty tagu "name" za hodnotu v tagu "speed".

    Mam GPS data v KML formatu, ale Google Earth zobrazuje automaticky jenom jmeno tagu. Chtel bych tam mit radsi rychlost.

    Myslite, ze musim napsat scriptik, kterej vezme vsechny ty hodnoty  v tagu "Placemark", premeni to a pak je zapise do noveho souboru? Nebo se to da udelat jednoduseji?

    Tady je jeden placemark. Samozrejme jich je tisice v jednom souboru.

    <Placemark>
                <name>-617</name>
                <Snippet/>
                <description><![CDATA[
                  <table>
                    <tr><td>Longitude: 151.077010 </td></tr>
                    <tr><td>Latitude: -33.733747 </td></tr>
                    <tr><td>Altitude: 184.100 meters </td></tr>
                    <tr><td>Speed: 70.8 km/hour </td></tr>
                    <tr><td>Heading: 15.9 </td></tr>
                    <tr><td>Time: 2009-09-26T23:42:51Z </td></tr>
                  </table>
                ]]></description>
                <LookAt>
                  <longitude>151.077010</longitude>
                  <latitude>-33.733747</latitude>
                  <tilt>66</tilt>
                </LookAt>
                <TimeStamp><when>2009-09-26T23:42:51Z</when></TimeStamp>
                <styleUrl>#track</styleUrl>
                <Point>
                  <coordinates>151.077010,-33.733747,184.100000</coordinates>
                </Point>
              </Placemark>
    
    

    Odpovědi

    29.9.2009 14:20 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.
    Určitě musíte napsat nějký skriptík. Nejvhodnější by byla asi nějaká XSLT transformace, ale potřebujete někoho, kdo je ovládá, abyste s tím netrávil tejden. Další možnost je to zbastlit pomocí nějaké knihovny pro xml třeba v pythonu, takhle velkých souborů by se víc hodil SAX, ale to zase potřebujete někoho kdo ví která bije, a nebo nakonec DOM, např. simplexml, kde to spolu s googlem zvládne i poloprogramátor.
    29.9.2009 14:27 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.
    Škoda že neexistuje žádný sed pro XML. Já bych to řešil pomocí XSLT, nicméně pokud ten váš soubor má pevnou strukturu, asi by se dal i se sedem udělat nějaký kotrmelec, jak tam ty hodnoty přepsat.
    29.9.2009 14:30 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.
    Koukám že rychlost máte schovanou v CDATA. No, to asi se standardním XSLT bez rozšiřujících funkcí nepůjde.
    29.9.2009 14:48 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.

    Ma to pevnou strukturu. Asi to v bash nactu radek po radku jako promenou a sedem to nejak vystrihnu. XSLT neznam...

    Myslim, ze se to bude hodit spouste lidem, kteri logujou GPS data ( treba v aute) a pak si to chteji prohlednout na Google Earth.

    3.10.2009 18:12 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.

    Tak scriptik mam skoro hotovy. Nacitam radky do array. Ted bych potreboval pomoc. Jak vyndat rychlost a vlozit ji do tagu "name"? Myslim, ze asi pouzitim "sed", ze?
    Potrebuji jen tu rychlost "70.8 km/hour".

    speed=$(echo -e "    Speed: 70.8 km/hour " | sed ...)
    

    A pak nejak nahradit to cislo v tagu "name". To asi take s pomoci "sed", ze? Samozrejme zverejnim scriptik, az bude hotov i s postupem, jak loguju GPS data, kdyz jedu na motorce, a pak je zobrazuji v Google Earth. Diky za pomoc.

    3.10.2009 18:59 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.

    Tak jsem tak nejak sbastlil tu rychlost:

    echo -e "    Speed: 70.8 km/hour " | sed -e 's/<[^>]*>//g' speedline.txt | sed -e 's/Speed://g'
    3.10.2009 19:31 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.

    Tak jsem to tak nejak udelal:

    LINEARRAY[8] je radek s rychlosti
    LINEARRAY[1] je radek s tagem "name"

    
    
    changeName(){
    
    SPEED=$(echo ${LINEARRAY[8]} | sed -e 's/<[^>]*>//g' speedline.txt | sed -e 's/Speed://g')
    
    LINEARRAY[1]=$(echo ${LINEARRAY[1]} | sed -e 's/-[0-9]/SPEED/')
    
    

    Problem je, ze nemuzu nahradit SPEED za variable SPEED. Kdyz tam dam '$SPEED' tak mi to hazi mi to error.

    4.10.2009 11:11 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: zamena hodnoty v tagu jinou hodnotou z jineho tagu.

    Tak jsem to uplacal:

    changeName(){
    
    SPEED="$(echo ${LINEARRAY[8]} | sed -e 's/<[^>]*>//g' | sed -e 's/.*Speed://g')"
    
    TEMP1=$(echo -e "${LINEARRAY[1]}" | sed -e 's/-[0-9]*<\/name>//')
    TEMP2=$(echo -e "${LINEARRAY[1]}" | sed -e 's/.*<name>-[0-9]*//')
    
    TEMP=$TEMP1$SPEED$TEMP2
    LINEARRAY[1]=$TEMP
    }
    

    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.