Unity 数字字符串逗号千分位

使用InputField时处理输入的数字型字符串千分位自动添加逗号,且自动保留两位有效数字

输入:123 输出:123.00

输入:12345 输出:12,345.00

代码非常简单

cs 复制代码
using UnityEngine;
using TMPro;

public class NumberFormatter : MonoBehaviour
{
    private TMP_InputField inputField;

    private void Start()
    {
        inputField = GetComponent<TMP_InputField>();
        inputField.onEndEdit.AddListener(FormatNumber);
    }

    private void FormatNumber(string value)
    {
        if (!string.IsNullOrEmpty(value) && double.TryParse(value, out double number))
        {
            inputField.text = number.ToString("#,##0.00");
        }
    }
}

固定的格式化字符串"#,##0.00"是一种常用的数字格式化模式,其含义如下:

"#"代表数字占位符,表示位置上可能是数字,如果没有数字则不显示。

","表示千分位符号,用来为数字添加逗号分隔符。

"0"表示必须有数字占位符,如果没有数字则显示为零。

"."表示小数点。

"00"表示固定保留两位小数。

因此,当使用这种格式化字符串时,数字将按照每三位添加一个逗号的千分位分隔符,并且始终保留两位小数。这种格式化字符串通常用于显示货币、数字金额或其他需要固定小数位数和千分位分隔符的情况。

相关推荐
霜绛5 小时前
Unity:lua热更新(三)——Lua语法(续)
unity·游戏引擎·lua
世洋Blog13 小时前
更好的利用ChatGPT进行项目的开发
人工智能·unity·chatgpt
evolution_language1 天前
Unity场景(Scene)的注意事项和易错点
unity·游戏引擎·scene
EQ-雪梨蛋花汤1 天前
【AI工具】使用 Doubao-Seed-Code 优化 Unity 编辑器插件:从功能实现到界面美化的完整实践
人工智能·unity·编辑器
g***B7381 天前
元宇宙游戏引擎
游戏引擎
Dr.勿忘1 天前
开源Unity小框架:高效单例与模块化设计
游戏·unity·开源·c#·游戏引擎·游戏程序·gamejam
jtymyxmz3 天前
《Unity Shader》8.4 透明度混合
unity·游戏引擎
世洋Blog3 天前
利用<<左移运算符优雅的设计游戏能力的任意组合和判断
游戏·unity·c#
毛甘木3 天前
Unity MonoPInvokeCallback 使用教程
c++·unity
心疼你的一切3 天前
Unity开发Rokid应用之离线语音指令交互模型
android·开发语言·unity·游戏引擎·交互·lucene