reading file byLine
Jordan Wilson via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu Sep 3 15:56:56 PDT 2015
On Thursday, 3 September 2015 at 22:48:01 UTC, Jordan Wilson
wrote:
> On Thursday, 3 September 2015 at 22:21:57 UTC, Namal wrote:
>>>
>>> ep18.d(10): Error: no property 'split' for type 'char[]'
>>> /usr/include/dmd/phobos/std/algorithm.d(427):
>>> instantiated from here: MapResult!(__lambda1, ByLine!(char,
>>> char))
>>> ep18.d(10): instantiated from here: map!(ByLine!(char,
>>> char))
>>>
>>> and then a long list to the end of my code
>>> Error: undefined identifier a
>>
>> Hmm, seems I forgot to add std.string, now it works, but words
>> seems not to be an array, at least I cannot access it like an
>> array. words[0][0] leads to
>>
>> Error: no [] operator overload for type MapResult!(__lambda1,
>> ByLine!(char, char))
>>
>> So is is a map? How can I convert all the elements in it to
>> integer and store it in a real array?
>
> I believe it's by using array:
> auto words = file.byLine() // you've all lines in
> range
> .map!(a => a.split).array();
Sorry, I didn't notice the "convert all the elements in it to
integer" part.
I think I saw reference to the to! before...that is one way to
convert.
auto words = file.byLine() // you've all lines in range
.map!(a => a.split)
.map!(a => to!int(a)).array();
More information about the Digitalmars-d-learn
mailing list