¥マークが・・・。
Delphi2007で作った次のような関数が、Delphi XE2で正しく動作しませんでした。
この関数は、右寄せの目的で使っていて、「_______12,345円」というような文字列を返します。
実行結果(¥マークが残っています)
原因は、直接書いてる\マークです。これがShift-JISになっているようです。 ただ、DelphiXE2上で打ち直しても、うまく動作しないため次のようなコードにしました。
function GetFormattedPrice(Price: Currency): String; begin Result := (Format('%14m円',[Price])); Delete(Result,AnsiPos('\', Result),1); end;
実行結果(¥マークが残っています)
原因は、直接書いてる\マークです。これがShift-JISになっているようです。 ただ、DelphiXE2上で打ち直しても、うまく動作しないため次のようなコードにしました。
function GetFormattedPrice(Price: Currency): String; const Yen = #$00A5; begin Result := (Format('%14m円',[Price])); Delete(Result,AnsiPos(Yen, Result),1); end;
| 固定リンク