在Delphi XE8中,我必须将'03213213210'字符串转换为int64
a
我收到a = 3213213210;我如何收到? a = 03213213210;
帮我。谢谢。
答案 0 :(得分:1)
Int64
是一个数字值。它包含一个数字。数字没有格式,前导零,表示形式等的概念。数字只是数字。
诸如二进制,八进制,十进制,十六进制的概念对数字的值没有影响,只是对数字的表示没有影响。同样,格式要求(例如,设定的位数)与该值无关,而只是显示格式的属性。
简而言之,前导零不是数字的属性。您的Int64
变量包含数字。选择显示时,您可以选择强制执行一组数字,例如通过填充前导零来实现该数字。但这不是数字的属性Int64
变量。这是您选择显示方式的一个属性。
因此,如果您确实需要以Int64
的形式发送值,则无需执行其他操作。如果需要用11位数字显示,并且左填充为零,那么显示该格式的人将负责。另一方面,为了保留格式,可能应该将该值作为字符串保存。
我不能确定上面两个选项中的哪个是您需要执行的操作,但是我可以肯定,尝试将{开头的零存储在Int64
中不是解决方案,因为这是不可能的。