C# fájl beolvasás

Fórumok

Sziasztok! Azt szeretném kérdezni, hogy ha van egy fájlom amiben soronként így szerepelnek az adatok:

X XX X:XXX XXXXX XXXXXXX

akkor hogyan lehet azt megoldani, hogy csak az első 3 szóköz alapján vágja szét és úgy rakja be egy többdimenziós tömbbe?

tehát pl. van egy cucc[100,4] tömb és így szeretném:
cucc[0,0] = X
cucc[0,1] = XX
cucc[0,2] = X
cucc[0,3] = XXX XXXXX XXXXXXX

mert a Split(' ',4) -et nem fogadja el.
Köszönöm a választ.

Hozzászólások

nem ' '-re kell splittelni. Ha jól emlékszem, a C# tudott regexre törni, akkor pedig '([a-zA-Z0-9]) ([a-zA-Z0-9]) ([a-zA-Z0-9][a-zA-Z0-9]):([ a-zA-Z0-9]*)'

lehet, hogy van egyszerűbb, én sem vagyok akkora májer regexben, de ez szerintem működik.

ez nekem bonyolult, nem rég kezdtem foglalkozni a témával. :S

Ha tudod, hogy az egyes elemek milyen hosszúak, meg lehet csinálni sima String.Substring-el is.
cucc[0,0] = str.Substring(0, 1)
cucc[0,1] = str.Substring(1, 2)
cucc[0,2] = str.Substring(3, 1)
és igy tovább

én abból indultam ki, hogy minden sor X XX X:XXX XXXXX XXXXXXX formátumú :)
egyébként az alattam levő hozzászólásnak igaza lehet, lefordul igy a kód? " ".ToCharArray() -al nem működik?
EDIT: látom params-os a Split, úgyhogy törölve az előző gondolat
EDIT2: és itt is a baj, most jövök rá - ha nem arrayként adod át a karaktereket, a 3-at castolja charrá

char[] c=new char[]{' '};
...
s.Split(c,4);
...

Használhatnád a Split(new char[]{' '},4) formát is, de az egy kissé erőforrásigényes lenne egy ciklus belsejében.