string - Delphi strToint64 初始值为零
问题描述
在 Delphi XE8 中,我必须将 '03213213210' 字符串转换为 int64
a:=strToint64('03213213210');
我收到 = 3213213210;我怎样才能收到?a = 03213213210;
帮我。谢谢你。
解决方案
AnInt64
是一个数值。它有一个数字。数字没有格式、前导零、表示基数等概念。数字只是一个数字。
二进制、八进制、十进制、十六进制等概念对数字的值没有影响,只是它的表示。类似地,诸如设置的位数之类的格式要求与值无关,而是用于显示的值格式的属性。
简而言之,前导零不是数字的属性。您的Int64
变量包含数字。当您选择显示它时,您可以选择强制使用一组数字,例如通过填充前导零来实现该数字。但这不是数字的属性,Int64
变量。这是您选择如何显示它的属性。
因此,如果您确实需要将值作为 发送Int64
,那么您无需再做任何事情。如果它需要用 11 位数字显示,左填充为零,那么格式化是显示它的人的责任。另一方面,您可能应该将值保存为字符串以保留格式。
我不知道上面两个选项中的哪一个是您需要做的,但我可以很确定尝试在 an 中存储前导零Int64
不是解决方案,因为这是不可能的。
推荐阅读
- r - 如何在 R 中创建新数据时转置列?
- entity-framework-core - 渴望从不使用其主键的自引用表中加载完整的层次结构
- sql - 如何设计像博客文章及其子文章一样捕获父子的 SQL 表
- powershell - PowerShell,itextsharp 提取的文本不再可读(脚本之前很好)
- c# - c#目录未创建异常发生
- python - 烧瓶 pytest 显示“CSRF 令牌丢失错误”
- linux - 如何计算执行程序的内存使用量?
- database - 存储用户设置和自定义(手动过滤)
- c# - 复杂WPF项目dotnet 5迁移性能分析
- c# - 阅读和删除电子邮件以进行自动化测试 c#