Certo. Il file di testo che ho usato per testare lo script è il seguenteOriginariamente inviato da andrea_kobe
questa cosa interessa anche me. posso sapere come hai risolto? ti ringrazio.![]()
mario, rossi, via roma 20, 11111, roma
333111111, 101010, 11111, mario@mail.it
giuseppe, verdi, via milano 1, 22222, milano
444222222, 111111, 1010, giuseppe@mail.it
franco, bianchi, via genova 3, , genova
555666666, 222222, , franco@mail.it
ovvero nome, cognome, via, cap e città per le righe dispari e cellulare, telefono, fax, email per le righe pari. Ho previsto ovviamente che alcuni campi possano non contenere dati.
Come accennato prima ho usato la powershell per risolvere il problema
E' scaricabile a questo indirizzo
http://www.microsoft.com/windowsserv.../download.mspx
Prima di installarla accertarsi di avere già il framework .NET 2.0
http://www.microsoft.com/downloads/d...d-aab15c5e04f5
In caso contrario installarlo.
Fatto tutto ciò digitare powershell da esegui. Se si apre la shell l'installazione è andata a buon fine.
Come ultima cosa scaricare powershell analyzer, un'utilissima interfaccia grafica standalone della shell, a questo indirizzo
http://shelltools.wik.is/PowerShell_Analyzer
Infine lo script che basterà incollare nell'editor di powershell analyzer (premere poi il triangolino verde per eseguire il comando)
Le uniche righe da modificare sono il percorso del file di testo di partenza e la destinazione in cui si vuole salvare il csv risultante.![]()
codice:$righe = get-Content "C:\path_completo\rubrica.txt" $i = 0 $list = @() foreach ($riga in $righe) { if ($i % 2 -eq 0) { $split = $riga.Split(",") $nome = $split[0].trim() $cognome = $split[1].trim() $via = $split[2].trim() $cap = $split[3].trim() $citta = $split[4].trim() } else { $split = $riga.Split(",") $cellulare = $split[0].trim() $telefono = $split[1].trim() $fax = $split[2].trim() $mail = $split[3].trim() $object = new-Object psobject $object | add-member noteproperty -name nome -value $nome $object | add-member noteproperty -name cognome -value $cognome $object | add-member noteproperty -name via -value $via $object | add-member noteproperty -name cap -value $cap $object | add-member noteproperty -name citta -value $citta $object | add-member noteproperty -name cellulare -value $cellulare $object | add-member noteproperty -name telefono -value $telefono $object | add-member noteproperty -name fax -value $fax $object | add-member noteproperty -name mail -value $mail $list+= $object } $i++ } $list | export-Csv -notypeinformation -encoding "Unicode" c:\rubrica.csv