delphi - 如何将整数整数转换为 3 位点分隔字符串
问题描述
我不敢相信我正在为此苦苦挣扎!希望这是一个容易的。使用 Delphi 或 Freepascal:
给定整个整数值“1230”或“1850”,如何将其格式化为 3 位数的浮点字符串,其中小数点位于第 3 位,并丢弃尾随数字。
例子
1230 表示“v12.3” 1850 表示“v18.5”
所以我需要将前两位数字转换为字符串。然后插入一个小数位。将第三位数字转换为小数点后的字符串。并丢弃零。我看过 Format、FormatFloat、Format 和其他几个,它们似乎都等同于将现有的浮点数转换为字符串,或将浮点字符串转换为数字。
解决方案
只需将整数值分配给浮点数并除以 100.0。
使用Format()或FormatFloat()将值转换为具有三位数字和小数点的字符串:
program Project8;
{$APPTYPE CONSOLE}
uses
System.SysUtils;
var
i : Integer;
const
myFormat : TFormatSettings = (DecimalSeparator: '.');
begin
i := 1230;
WriteLn(Format('v%4.1f',[i/100.0],myFormat)); // Writes v12.3
WriteLn(FormatFloat('v##.#',i/100.0,myFormat)); // Writes v12.3
ReadLn;
end.
推荐阅读
- node.js - 如何使用 ngif 使其可以隐藏 div 并且不验证 div 部分下的元素?
- react-native - react native如何解决以下错误
- vue.js - 将根属性添加到 vue 应用程序的问题
- flutter - 将数字转换为科学计数法并获得指数颤振
- javascript - 使用 JavaScript 更新 LocalStorage 中的对象?
- testing - 启动测试部门
- php - MySql php pdo 存储过程 PDOException: SQLSTATE[HY000]
- php - 使用 PHP 数据对象登录
- java - 加载到 tflite android 时将图像大小调整为 224*224
- javascript - 状态不会在异步函数中更新