Dann ist die Datei fehlerhaft, wenn die dann fehlerhaft angezeigt und dann evtl. mit einheitlichen Umbrüchen gespeichert würde, dann ist das finde ich kein falsches Verhalten.
Ich habe das so gelöst beim Einlesen:
Delphi-Quellcode:
function GetFileContentsAsString(uFilename: String;
var uFileFormat: T...FileFormat; var uCharSet: T...CharacterSet): String;
function DetectUnicode(var uSize: Integer; var uBigEndian: Boolean): Boolean;
...
function DetectUTF8(uText: String): Boolean;
...
function DetectAnsi(uText: String): Boolean;
...
function DetectAscii(uText: String): Boolean;
...
function DetectFileFormat(uText: String): TScribaFileFormat;
begin
if Pos(#13#10, uText) > 0 then
Result := ffPC
else if Pos(#10, uText) > 0 then
Result := ffUnix
else if Pos(#13, uText) > 0 then
Result := ffMac
else
Result := ffPC;
end;
...