Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
lightbluefox
HV Guru
liitunud: 30.12.2004
|
03.01.2011 13:30:43
Jutumärgid Openoffices (korras!) |
|
|
Kuidas lisada kõikidele valitud väärtustele jutumärgid?
Mis wildcard mängu tuleb?
Nt on ühes lahtris AUD;EEK;2010 12 01;11,40250;11,63200;11,53810
Oleks vaja, et pärast iga semikooloniga eraldatud välja, oleksid jutumärgid
nagu nt nii "AED";"1.11.2010";"-";"-";"3,049890"
Saab kuidagi CONCATENATE väärtust kasutada?
viimati muutis lightbluefox 03.01.2011 17:42:22, muudetud 1 kord |
|
Kommentaarid: 45 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
44 |
|
tagasi üles |
|
|
Dogbert
HV Guru
liitunud: 03.05.2004
|
03.01.2011 15:01:17
|
|
|
Hakkaksid ehk pihta algusest?
Kas algfail on kohe OpenOffice oma?
Seda näiteks olevat lahtri teksti vaadates ma ütleks pigem, et tegemist on csv failiga üldse - semikoolonid on sel juhul lahtrite eraldajaks. Ja seda oleks sel juhul mõttekam töödelda millegi lihtsamaga, mis ühtlasi regulaaravaldisi toetab (näiteks Notepad++ või kasvõi bash käsurealt otse). Mitte et Calc regulaaravaldisi ei toetaks, aga kui tabel midagi muud peale semikooloniga eraldatud väärtuste ei sisaldagi ja ongi päriselt csv-formaadis, siis pole mõtet AK47-ga kärbseid tappa.
Milleks neid jutumärke sinna üldse vaja on? Et kõiki väärtusi tekstina käsitletaks? Peab algne tabel ka alles jääma või on tegemist puhtalt ühe tabeli teisega asendamisega? Kui on vaja vaid tabelis asendus teha, siis miks hakata uut tabelit ehitama, kui võid kasutada find&replace?
Ühesõnaga räägi rohkem sellest asjast.
_________________ Tee inimesele lõke ja tal on soe üheks päevaks, pista ta põlema ja tal on soe elu lõpuni. (Terry Pratchett)
e.k spikker: muhk on kumer, lohk on nõgus. |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
32 |
|
tagasi üles |
|
|
lightbluefox
HV Guru
liitunud: 30.12.2004
|
03.01.2011 15:09:49
|
|
|
Korrektne formaat http://www.upload.ee/files/1024837/kurss112010.csv.html
Töötlemist vajav http://www.upload.ee/files/1024839/kurss122010.csv.html
Point siis selles, et Swedbank muutis oma allalaetava kursitabeli formaadi ja foxpros tehtud programmike ei oska enam sealt kursse lugeda, formaat peab jääma selliseks nagu novembri csv failis. Ehk siis tuleks veel reastada kuupäeva, mitte valuuta järgi.
Tõepoolest on OO võibolla pisut liig, aga peaks sellegagi asja tehtud saama. Üldjoontes CONCATENATE käsk tõesti toimib. Siiski ehk leidub tõesti lihtsam tee...
|
|
Kommentaarid: 45 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
44 |
|
tagasi üles |
|
|
A.S.
HV Guru
liitunud: 27.10.2003
|
03.01.2011 15:24:30
|
|
|
Kas CSVed ei suuda aidata? Separator ; ja Set Start Row 3 ning peaks lugema.
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
lightbluefox
HV Guru
liitunud: 30.12.2004
|
03.01.2011 15:40:13
|
|
|
Kustutasin valuuta "EEK" riba, aga CSVed ei saa kah sellest kuupäevast aru, st ta ei teisenda seda sobivasse formaati.
|
|
Kommentaarid: 45 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
44 |
|
tagasi üles |
|
|
A.S.
HV Guru
liitunud: 27.10.2003
|
03.01.2011 15:50:34
|
|
|
Search Replace lipikul saab tühiku asendada miinusega "-" ja siis kõige esimese lipiku pealt alt paremalt annab isegi mingil määral kuupäeva formaati muuta (ise pead panema mummu, mis järjestus seal momendil on (ymd)).
viimati muutis A.S. 03.01.2011 15:53:43, muudetud 2 korda |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
lightbluefox
HV Guru
liitunud: 30.12.2004
|
03.01.2011 16:08:48
|
|
|
Muutsin kuupäeva OOga, aga siiski tulevad jutumärgid vaid valuutatähisele ja tulpade pealkirjadele, st ülejäänud jäävad ilma ja ikkagi asi ei tööta...
|
|
Kommentaarid: 45 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
44 |
|
tagasi üles |
|
|
Dogbert
HV Guru
liitunud: 03.05.2004
|
03.01.2011 16:37:19
|
|
|
Kui kasutada Notepad++, siis "kahe ringi" rearch&replace abil:
- märgistad "wrap around" ja "regular expression"
- find what:
replace with:
<Replace All>find what:
replace with:
<Replace All>
Bashis saaks hakkama ühe reaga:
dos2unix -b lähtefail && iconv -f ISO-8859-1 -t UTF-8 lähtefail | sed -r 's/^(.*)$/"\1"/g' | sed 's/;/";"/g' > sihtfail |
kui dos2unix puudub, siis Debianis/Ubuntus sisaldub see pakis tofrodos:
sudo apt-get install tofrodos
Aga kui seda on ka edaspidi vaja, siis aitab pisike skript:
bash:
|
#!/bin/bash # parameetrite kontroll if [ "$1" == "" ]; then echo "puuduvad failinimed" exit 1 elif [ "$2" == "" ]; then echo "puudub sihtfaili nimi" exit 1 fi # algparameetrid err=false tempf=$RANDOM while [ -f "/tmp/$tempf" ]; do tempf=$RANDOM done # Windowsi formaadist Unixi formaati konvertimine if dos2unix -b "$1"; then echo "originaalfail salvestatud *.bak laiendiga" else echo "unix formaati konvertimine ebaõnnestus" exit 1 fi # Faili konvertimine iconv -f ISO-8859-1 -t UTF-8 "$1" > "$tempf" sed '2,$d' "$tempf" | sed -r 's/([^;]+)/"\1"/g' | sed -r 's/^(.+)$/\1;"";"";""/g' > "$2" echo '"Valuuta";"Kuupäev";"Ost";"Müük";"Eesti Pank"' >> "$2" if sed '1,3d' "$tempf" | sed -r 's/^([^;]+);[^;]+;([0-9]+)\ ([0-9]+)\ ([0-9]+);([^;]+;){2,2}([^;]+)$/"\1";"\4.\3.\2";"-";"-";"\6"/g' >> "$2"; then echo "konvertimine õnnestus" # Ridade sortimine cat "$2" > "$tempf" sed '3,$d' "$tempf" > "$2" if sed '1,2d' "$tempf" | sort -t ";" -k 2,2 -k 1,1 | iconv -f UTF-8 -t ISO-8859-1 >> "$2"; then echo "sortimine õnnestus" else echo "sortimine ebaõnnestus mingil põhjusel, \ kontrolli faili käsitsi" err=true fi else echo "konvertimine ebaõnnestus mingil põhjusel, \ kontrolli faili käsitsi" err=true fi # Töö lõpetamine rm "$tempf" if $err; then exit 1 fi exit 0
|
ot: |
Pagan, foorum asendab syntax tag-ide vahel olevas koodis semikooloni ja sulu winkiga, peab smailid postituses välja lülitama... |
Kui paned skripti nimeks näiteks konverter, siis hakkad seda kasutama selliselt:
konverter lähtefailinimi sihtfailinimi
_____________________
Lisasin sortimise ja viisin väljundi just sellele kujule, nagu sinu viimane näide - samad päiseread ja UNIX formaadis ISO-8895-1 kodeeringus tekst. Sisend vaid peab sisaldama just sama palju päiseridu ja tulpasid.
_________________ Tee inimesele lõke ja tal on soe üheks päevaks, pista ta põlema ja tal on soe elu lõpuni. (Terry Pratchett)
e.k spikker: muhk on kumer, lohk on nõgus.
viimati muutis Dogbert 03.01.2011 23:08:18, muudetud 5 korda |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
32 |
|
tagasi üles |
|
|
A.S.
HV Guru
liitunud: 27.10.2003
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
lightbluefox
HV Guru
liitunud: 30.12.2004
|
03.01.2011 16:55:13
|
|
|
Programm loeb 2 formaati, aga tundub et see kohitsetud variant ei tööta õigesti, sest ainuõige formaat oleks selline
http://www.upload.ee/files/1025095/kurss072010.csv.html
Aga ma ei näe võimalust kuidas seda selliseks saada...
A.S tundub et ost-müük peab tühi olema jah, kuna panga kommenrtskursid ei puutu minusse.
|
|
Kommentaarid: 45 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
44 |
|
tagasi üles |
|
|
Dogbert
HV Guru
liitunud: 03.05.2004
|
03.01.2011 16:57:03
|
|
|
No see viimane variant on UNIX formaadis (ilma CR realõppudeta) ja ISO-8859-1 kodeeringus.
Kas kolmas-neljas tulp peavadki tühjad olema?
Kas igas reas peab täpselt see tulpade arv olema?
_________________ Tee inimesele lõke ja tal on soe üheks päevaks, pista ta põlema ja tal on soe elu lõpuni. (Terry Pratchett)
e.k spikker: muhk on kumer, lohk on nõgus. |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
32 |
|
tagasi üles |
|
|
A.S.
HV Guru
liitunud: 27.10.2003
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
lightbluefox
HV Guru
liitunud: 30.12.2004
|
03.01.2011 17:42:05
|
|
|
Igaks juhuks tahaks jah vaid arve muuta, ma ei tea kui paindlik programm on ja mida ta arvestab ning mida mitte.
A.S. arvan et read peavad olema, aga ma ei usu et programm seda arvestab, ma kipun arvama et tegu on valuutadega millega Swedbank tehinguid teeb, EP kurss on põhiline (noh, enam mitte Eesti Panga...)
MUUDAN:
Tundub, et sain asja korda! Suured tänud Dogbert ja A.S.!
|
|
Kommentaarid: 45 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
44 |
|
tagasi üles |
|
|
A.S.
HV Guru
liitunud: 27.10.2003
|
03.01.2011 19:56:09
|
|
|
Proovisin korra ainult selle CSVed abil (oli veidi igav). Panen enda tegevusest ka mõne pildi, ehk järgmine kord läheb veidi lihtsamalt.
Võtsin ette kolmanda rea
Kustutasin teise veeru
Võtsin ette neljanda rea
Asendasin tühiku miinusega "-"
Muutsin ära kuupäeva formaadi
Võtsin ette teise rea ja kustutasin
Võtsin ette kolmanda rea
Sorteerisin kuupäeva järgi
Võtsin ette teise rea
Panin kõigile veergudele ette ja taha suvalise sümboli, mida failis pole veel kasutatud. " ei saa millegipärast panna, paneb """
Panin selle Q asemele "
Võtsin ette esimese rea ja kordasin viimast tegevust ainult selle reaga
Tulemuseks sain
http://www.upload.ee/files/1025449/kurss122010__.csv.html
Iga tegevusega peab kaasnema salvestamine, muidu "unustatakse" mõni asi ära.
Esimene rida oli vanal failil "1.11.2010";"30.11.2010";;;
veel vanemal "1.07.2010";"31.07.2010";"";"";""
uuel faili aga "01.12.2010";"31.12.2010"
Ei tea, kas on probleem? Notepad aitab.
Ja veeru päises Eesti Pank asemel on ka Euroopa Keskpanga kurss, aga selle ülekirjutamisega saab ka CSVed hakkama.
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
|