文字列の終わりがどんな改行コードになっているかを調べる
83 LastLineBreakStyle 動作確認 Delphi2007 更新日 2008/02/20(水)

文字列の終わりがどんな改行コードで終了しているのかを
判断するときに使う関数です。

文字列を行毎に分解して処理を行う時などに使えるでしょう。

戻り値のStyleを指定すると改行コード文字を戻す関数も作ってみました。

────────────────────
{-------------------------------
//  文字列の最後の改行コードを調べる関数
戻り値:     type TLineBreakStyle = (lbsCRLF, lbsCR, lbsLF ,lbsNoLineBreaks);
            で定義される値が戻る
備考:
履歴:       2003/09/15 作成
//------------------------------}
function LastLineBreakStyle(WideStr: WideString): TLineBreakStyle;
begin
  Result := lbsNoLineBreaks;

  if 2 <= Length(WideStr) then
  begin
    if (WideStr[Length(WideStr)-1]=#13)
      and (WideStr[Length(WideStr)]=#10) then
    begin
      Result := lbsCRLF;
      Exit;
    end;
  end;

  if 1 <= Length(WideStr) then
  begin
    case WideStr[Length(WideStr)] of
      #13: begin Result := lbsCR; Exit; end;
      #10: begin Result := lbsLF; Exit; end;
    end;
  end;
end;

function LineBreakString(Style: TLineBreakStyle): String;
begin
  case Style of
    lbsCRLF:    Result := CRLF;
    lbsCR:      Result := CR;
    lbsLF:      Result := LF;
    lbsNoLineBreaks: Result := EmptyStr;
  end;
end;
//------------------------------
────────────────────