dmd foreach loops throw exceptions on invalid UTF sequences, use replacementDchar instead
user1234
user1234 at 12.de
Mon Nov 15 11:26:41 UTC 2021
On Monday, 15 November 2021 at 11:20:04 UTC, FeepingCreature
wrote:
> On Monday, 15 November 2021 at 08:22:13 UTC, user1234 wrote:
>> On Monday, 15 November 2021 at 08:20:57 UTC, user1234 wrote:
>>> On Friday, 12 November 2021 at 10:42:15 UTC, kdevel wrote:
>>>> This does not yet compile:
>>>>
>>>> [...]
>>>> `R = ubyte[]`
>>>> must satisfy one of the following constraints:
>>>> ` isSomeChar!(ElementType!R)
>>>> is(StringTypeOf!R)`
>>>
>>> auto-decoding or not... you need to decode from whatever is
>>> the OS encoding (must be ancient ANSI I presume ?) to UTF-8.
>>
>> I meant decode then re-enc to utf
>
> I don't see how that could work. `readText` would need to
> encode it to the OS codepage, but `readText` has no idea what
> encoding you intend. And the encoding of a filename isn't even
> always determined by the locale; consider trying to access
> filenames saved in a different locale, ie. what iconv does.
> There's no way around `readText` taking `ubyte[]`.
I think I was off-topic, my reply was about the filename, e.g
`fname.fromAnsi(cp).toUTF!char.readText()`
you were more talking about the file content apparently ? sorry
about that.
More information about the Digitalmars-d
mailing list