Hallo,
ich habe mir einige Serviceprogramme geschrieben, mit denen ich Streamfiles bequem lesen kann. Ich nutze dazu die UNIX Type APIs. Z.B. "read".

Code:
D AnzBytes        S             10U 0
D AnzGelesen      S             10P 0
D buffer          S          64000A
AnzGelesen = read(handle:%addr(buffer):AnzBytes)
Das ganze funktioniert allerdings nur, wenn in der Streamfile ein Single Byte Character Set drinsteht. Wenn ich eine Streamfile erzeuge, die UTF-8 oder Unicode beinhaltet, stürzt das Programm ab.

In der Doku zu "read" steht auch, dass damit nur eine genaue Anzahl von Bytes gelesen wird. Ich will aber eigentlich keine Bytes lesen, sondern Zeichen.

Hat jemand dieses Problem bereits gelöst? Gibt es eine empfehlenswerte API-Funktion, mit der man Zeichen (auch Unicode oder UTF-8) lesen kann?

Vielleicht fällt ja jemandem etwas über die Feiertage ein! Im Voraus vielen Dank!

Frohe Ostern.

Dieter