PDA

Visualizza versione completa : Help: script o batch per automatizzare.....


TNOTB
03-10-2008, 20.49.06
Ciao a tutti:)

avrei bisogno di un programmino o un semplice batch che mi automatizzi una certa operazione relativa al contenuto di un file
premetto che sono a digiuno di qualsiasi linguaggio di programmazione e/o di comandi avanzati per creare script o batch.

Mi spiego:

ho un file txt con questo contenuto tipo:


L 101 1
CU Z 2449028.834523083.52 184.54
CD Z 2449029.244523084.09 184.45
CD Z 2449031.914523082.27 184.34
CD Z 2449051.484523061.27 184.49
CD Z 2449050.404523060.48 184.74
CD Z 2449029.444523083.90 184.37
L 101 2
CU Z 2449028.794523083.54 184.51
CD Z 2449051.434523061.41 184.50
L 101 3
CU Z 2449051.434523061.41 184.50
L 101 4
CU Z 2449028.524523130.61 178.31
CD Z 2449034.174523128.20 178.24
CD Z 2449033.304523125.85 178.25
CD Z 2449027.544523128.00 178.20
CD Z 2449028.504523130.57 178.27
CD Z 2449033.064523125.85 178.23


tali codici dovrebbero essere trasformati così:

- le righe relative a "L 101 1 " devono sparire

- ogni codice "CU Z" e "CD Z" deve essere sostituito con CTB

- ogni valore numerico di ogni riga, ad esempio:


2449028.834523083.52 184.54


deve essere così scomposto


2449028.83 4523083.52 184.540


ovvero la serie centrale deve essere separata due cifre dopo il punto

- all'inizio di ogni riga, dopo il codice CTB (ex CU Z/CD Z) deve essere inserito il corrispondente valore numerico della riga alla quale appartiene la serie di codici

nell'esempio sopra abbiamo 4 serie di codici e nella prima ad esempio abbiamo 6 righe


in definititiva il contenuto del file di output deve essere come segue, rispettando gli spazi tra i vari valori:


CTB 1 2449028.83 4523083.52 184.540
CTB 2 2449029.24 4523084.09 184.450
CTB 3 2449031.91 4523082.27 184.340
CTB 4 2449051.48 4523061.27 184.490
CTB 5 2449050.40 4523060.48 184.740
CTB 6 2449029.44 4523083.90 184.370
CTB 1 2449028.79 4523083.54 184.510
CTB 2 2449051.43 4523061.41 184.500
CTB 1 2449028.52 4523130.61 178.310
CTB 2 2449034.17 4523128.20 178.240
CTB 3 2449033.30 4523125.85 178.250
CTB 4 2449027.54 4523128.00 178.200
CTB 5 2449028.50 4523130.57 178.270
CTB 6 2449033.06 4523125.85 178.230
CTB 1 2449082.66 4523117.36 180.470
CTB 2 2449080.33 4523117.16 180.250
CTB 3 2449080.28 4523119.32 180.250
CTB 4 2449080.75 4523119.44 180.250
CTB 5 2449080.62 4523120.27 180.250
CTB 6 2449082.84 4523120.31 180.210
CTB 7 2449085.51 4523120.02 180.130
CTB 8 2449085.28 4523117.25 180.420

esiste la possibilità di creare un batch che si occupi di tal operazione? sono circa 13000 righe e sarebbe un lavoraccio da fare manualmente.

Grazie:)

Franzo
10-10-2008, 12.50.46
Ciao,
o qualcuno ti fa un programmino ad hoc oppure importa in word, alcune cose le puoi fare con il comanndo trova e sostituisci

NS-1
20-10-2008, 00.57.54
...mhhh...
se ti studi qualcosina di programmazione in C oppure se preferisci di Delphi (così ti crei un'interfaccia grafica in 2 secondi) lo puoi fare tranquillamente tu senza problemi...

Franzo
20-10-2008, 10.19.28
Infatti, potrebbe essere un buon input per imparare qualche linguaggio. Se non hai esperienza parti con il Visual Basic