How do I convert string to Indian Money format?(如何将字符串转换为 Indian Money 格式?)
问题描述
我正在尝试将字符串转换为 India Money 格式,例如如果输入为1234567",则输出应为12,34,567"
I am trying to convert string to India Money format like if input is "1234567" then output should come as "12,34,567"
我已经编写了以下代码,但它没有给出预期的输出.
I have written following code but its not giving the expected output.
CultureInfo hindi = new CultureInfo("hi-IN");
string text = string.Format(hindi, "{0:c}", fare);
return text;
谁能告诉我怎么做?
推荐答案
如果 fare 是 int, long, 中的任何一个decimal, float 或 double 然后我得到预期的输出:
If fare is any of int, long, decimal, float or double then I get the expected output of:
12,34,567.00 卢比.
我怀疑你的 fare 实际上是一个 string;字符串不是由 string.Format 格式化的:它们是已经一个字符串:格式化没有价值.所以:首先解析它(使用任何合适的,也许是不变的十进制解析),然后格式化解析的值;例如:
I suspect your fare is actually a string; strings are not formatted by string.Format: they are already a string: there is no value to format. So: parse it first (using whatever is appropriate, maybe an invariant decimal parse), then format the parsed value; for example:
// here we assume that `fare` is actually a `string`
string fare = "1234567";
decimal parsed = decimal.Parse(fare, CultureInfo.InvariantCulture);
CultureInfo hindi = new CultureInfo("hi-IN");
string text = string.Format(hindi, "{0:c}", parsed);
<小时>
编辑重新评论;只获取没有货币符号或小数部分的格式化值:
Edit re comments; to get just the formatted value without the currency symbol or decimal portion:
string text = string.Format(hindi, "{0:#,#}", value);
这篇关于如何将字符串转换为 Indian Money 格式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何将字符串转换为 Indian Money 格式?
基础教程推荐
- C# 从 List<List<int>> 中删除重 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- WPF 模态进度窗口 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
