微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 转换印度货币符号

我有一个简单的C#控制台代码,它将html名称转换为相应的符号.

示例: – & euro; – >这是欧元html名称,&#8364 – >.这是欧元的十进制代码;

My code will convert this name to euro symbol-> €

但是当我将&#8377转换为₹时,它无效.

我的控制台应用代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions;

namespace Multiple_Replace
{
    class Program
    {
        static void Main(string[] args)
        {
        var input = " ₹ 5000 €";
        var replacements = new Dictionary<string,string> { { "₹","&#8377;" },{"&euro;","&#8364;"} };
        var output = replacements.Aggregate(input,(current,replacement) => current.Replace(replacement.Key,replacement.Value));
        Console.WriteLine(output);
        Console.ReadLine();
        }
    }
}

请帮帮我.

解决方法

首先,我认为这里有一个更基本的问题.

您的输入字符串不包含字符串“& euro;”.

如果将Dictionary更改为:

var replacements = new Dictionary<string,{ "€","&#8364;" } };

然后你会看到输出实际上是:

&#8377; 5000 &#8364;

所以你没有看到你认为你看到的东西,因为“₹”是字符串的一部分“& euro;”不是.

也就是说,读到这一点,似乎所有浏览器都不支持这个卢比符号的html实体代码.

如果您要完成此任务,则以下代码使用unicode代码

using System;
using System.Collections.Generic;
using System.Linq;

namespace Multiple_Replace
{
    class Program
    {
        static void Main(string[] args)
        {
            var input = " ₹ 5000 €";
            var replacements = new Dictionary<string,"\u20B9" },"\u20AC" } };
            var output = replacements.Aggregate(input,replacement.Value));
            Console.WriteLine(output);
            Console.ReadLine();
        }
    }
}

另外,请检查此问题和接受的答案,我认为这将为您提供信息:

Displaying the Indian currency symbol on a website

最后,如果你想在html中正确表示符号,你可以使用这个代码

<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">

<i class="fa fa-inr"></i>

HTH

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐