gpt4 book ai didi

javascript - 如何在 C# 中将表中存储的数字格式化为 crore & lacs(印度编号系统)

转载 作者:行者123 更新时间:2023-12-03 04:19:06 26 4
gpt4 key购买 nike

我在表中存储了数字,例如 11000000、7000000我想将它们转换为 1.1 千万罗尔、70 拉克等 ( Indian numbering system ) 并将它们显示在 aspx (UI) 页面上。

有什么办法可以格式化数字吗?

我在 .cs 文件中编写了以下 C# 函数

public static int  CustomFormat(int budget)
{
if (budget >= 10000000)
{
budget = Int32.Parse(((budget / 10000000) + "Cr").ToString());
}
else if (budget >= 100000)
{
budget = Int32.Parse(((budget / 100000) + "Lacs").ToString().Trim());
}
return budget;
}

将从 .aspx (UI) 页面调用,如下所示:

<%# CustomFormat(Int32.Parse(Eval("budget").ToString())) %>

但显示以下错误:

Input string was not in a correct format.

最佳答案

这里有几个问题:

1) 在您的 UI 中:Int32.Parse(Eval("budget").ToString())在这里,您似乎获取了一个 int (预算),将其转换为字符串,然后立即再次将其转换回 int。据我所知,这是完全多余的。

2)您将包含文本(例如“10000Cr”)的字符串传递给 Int32.Parse,这显然不起作用。我认为 Int32.Parse 在这里甚至没有必要。如果你想要分数(例如你提到的 1.1),那么将它们转换为 int 也无济于事。您需要一个 float

3) 您想要一段包含“Cr”或“Lacs”短语的格式化文本,但您的函数返回一个不能包含此内容的 int。它需要返回一个字符串

我认为这应该有效(我现在无法测试它):

public static string  CustomFormat(float budget)
{
string budgetString = "";

if (budget >= 10000000)
{
budgetString = (budget / 10000000) + "Cr";
}
else if (budget >= 100000)
{
budgetString = (budget / 100000) + "Lacs";
}
return budgetString;
}

在用户界面中:

<%# CustomFormat(Eval("budget")) %>

关于javascript - 如何在 C# 中将表中存储的数字格式化为 crore & lacs(印度编号系统),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44022244/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com