RaouL_BennetH
13-01-2017, 18:00
Premessa: non è possibile utilizzare LinQ !
Ciao a tutti.
Ho un file di testo così composto:
17,"09:00"
6,"COD04",01,0,"3000"
6,"COD08913",01,0,"3000"
6,"COD02",03,0,"2000"
16
17,"11:10"
6,"COD04",02,0,"1500"
6,"COD1921",01,0,"3000"
6,"COD70",05,0,"3000"
16
etc...
in pratica, i codici "17" e "16" indicano l'inizio e la fine del raggruppamento.
Io devo convertirli in questo modo:
09.00.0000.00.3000COD04
09.00.0000.00.3000COD08913
09.00.0000.00.2000COD02
11.10.0000.00.1500COD04
11.10.0000.00.3000COD1921
11.10.0000.00.3000COD70
Ho iniziato ragionando prima sull'aprire il file ovviamente e a cercare di individuare i campi che mi interessano:
string[] righe = File.ReadAllLines(mioFile);
foreach(string riga in righe)
{
string[] colonna = riga.Split(new char[] {','});
int head = int.Parse(colonna[0]);
switch (head)
{
case 6:
string testCodice = colonna[1].Replace("\"", "");
string testValoreCoda = colonna[4].Substring(colonna[4].Length - 6, 3);
Console.WriteLine("." + testValoreCoda + testCodice);
break;
case 16:
break;
default:
string testOrario = colonna[1].Replace("\"", "");
testOrario = testOrario.Replace(":", ".") + ".0000.00";
Console.WriteLine(testOrario);
break;
}
}
Aldilà dell'eleganza / efficienza o meno, riesco ad "isolare" i dati che mi interessano, infatti ciò che mi viene stampato a video è:
09.00.0000.00
.3000COD04
.3000COD08913
.2000COD02
11.10.0000.00
.1500COD04
.3000COD1921
.3000COD70
Potete darmi una mano sul ragionamento ?
Grazie a tutti.
Ciao a tutti.
Ho un file di testo così composto:
17,"09:00"
6,"COD04",01,0,"3000"
6,"COD08913",01,0,"3000"
6,"COD02",03,0,"2000"
16
17,"11:10"
6,"COD04",02,0,"1500"
6,"COD1921",01,0,"3000"
6,"COD70",05,0,"3000"
16
etc...
in pratica, i codici "17" e "16" indicano l'inizio e la fine del raggruppamento.
Io devo convertirli in questo modo:
09.00.0000.00.3000COD04
09.00.0000.00.3000COD08913
09.00.0000.00.2000COD02
11.10.0000.00.1500COD04
11.10.0000.00.3000COD1921
11.10.0000.00.3000COD70
Ho iniziato ragionando prima sull'aprire il file ovviamente e a cercare di individuare i campi che mi interessano:
string[] righe = File.ReadAllLines(mioFile);
foreach(string riga in righe)
{
string[] colonna = riga.Split(new char[] {','});
int head = int.Parse(colonna[0]);
switch (head)
{
case 6:
string testCodice = colonna[1].Replace("\"", "");
string testValoreCoda = colonna[4].Substring(colonna[4].Length - 6, 3);
Console.WriteLine("." + testValoreCoda + testCodice);
break;
case 16:
break;
default:
string testOrario = colonna[1].Replace("\"", "");
testOrario = testOrario.Replace(":", ".") + ".0000.00";
Console.WriteLine(testOrario);
break;
}
}
Aldilà dell'eleganza / efficienza o meno, riesco ad "isolare" i dati che mi interessano, infatti ciò che mi viene stampato a video è:
09.00.0000.00
.3000COD04
.3000COD08913
.2000COD02
11.10.0000.00
.1500COD04
.3000COD1921
.3000COD70
Potete darmi una mano sul ragionamento ?
Grazie a tutti.