Megaoctane Skrevet 25. juni 2011 Del Skrevet 25. juni 2011 (endret) Har en .dat fil med regnskapsinformasjon. Hver rad begynner med <32 og ender med <32. Det kommer noe info etter <32 i samme rad, men dette skal ignoreres. Etter <32 kommer dato, og så forskjellige omsetningstall. Alt er separert med ' Etter dato ønsker jeg å sette inn et kontonummer som jeg vil definere i filen. Filen ser slik ut, eksempel: <32'21.05.2011'3000'150.40'130'200<32hu'tte'23'77'hu <32'22.05.2011'2400'120.20'22'3980<32hu'tth'76'90'hu osv nedover. Hvordan da få dette slik: 21.05.2011,1920,3000 21.05.2011,3100,150.40 21.05.2011,3200,130 21.05.2011,6400,200 22.05.2011,1920,2400 22.05.2011,3100,120.20 22.05.2011,3200,22 22.05.2011,6400,3980 Kontoene ønsker jeg å definere i filen, slik at første verdi etter dato skal ha kontonummer 1920, neste skal ha 3100, osv. Noen som kan hjelpe? Output filen skal lagres som csv fil for import inn i et regnskapssystem. Håper noen kan hjelpe.. Endret 25. juni 2011 av Megaoctane Lenke til kommentar
GeirGrusom Skrevet 25. juni 2011 Del Skrevet 25. juni 2011 System.Text.RegularExpressions.Regex 1 Lenke til kommentar
Megaoctane Skrevet 25. juni 2011 Forfatter Del Skrevet 25. juni 2011 Er ikke noen stor programmerer, så vet ikke helt hvordan jeg skal bruke informasjonen på den siden. Beklager. Lenke til kommentar
GeirGrusom Skrevet 25. juni 2011 Del Skrevet 25. juni 2011 Okæi. Her er et kort program som skal klare jobben for deg. using System; using System.Text; using System.Text.RegularExpressions; namespace ParseDataset { class Program { static readonly Regex ParseRegex = new Regex( @"^\<32'(?<Data>.*?)<32.*$", RegexOptions.Compiled | RegexOptions.Multiline); static void Main(string[] args) { var input = System.Console.In.ReadToEnd(); var match = ParseRegex.Match(input); while (match.Success) { Console.Out.WriteLine(match.Groups["Data"].Value.Replace('\'', ',')); match = match.NextMatch(); } } } } ParseDataset.zip Det funker enkelt nok ved at du piper data fra datasette til programmet, og programmet vil skrive resultatet ut på skjermen. Så du kan starte kommandovindu (cmd) og bla deg frem til mappen dataene ligger i, og skriv noe slikt: type minfil.dat | ParseDataSet.exe > output.txt 1 Lenke til kommentar
Megaoctane Skrevet 25. juni 2011 Forfatter Del Skrevet 25. juni 2011 TUSEN TAKK. Skal teste dette ut. Poster hvis jeg trenger mere hjelp. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå