C# .net实现货币转换示例

本文所述C# .net实现货币转换示例主要利用string.format 和cultureInfo 来进行转换。分享给大家供大家参考之用。具体方法如下:

主要实现代码如下:

/// <summary>
/// 输入Float格式数字,将其转换为货币表达方式
/// </summary>
/// <param name="ftype">货币表达类型:0=带¥的货币表达方式;1=不带¥的货币表达方式;其它=带¥的货币表达方式</param>
/// <param name="fmoney">传入的int数字</param>
/// <returns>返回转换的货币表达形式</returns>
public string Rmoney(int ftype, double fmoney)
{
  string _rmoney;
  try
  {
 switch (ftype)
 {
   case 0:
 _rmoney = string.Format("{0:C2}", fmoney);
 break;
   case 1:
 _rmoney = string.Format("{0:N2}", fmoney);
 break;
   default:
 _rmoney = string.Format("{0:C2}", fmoney);
 break;
 }
  }
  catch
  {
 _rmoney = "";
  }
  return _rmoney;
}
/// <summary>
/// 输入Float格式数字,将其转换为货币表达方式
/// </summary>
/// <param name="ftype">货币表达类型:0=人民币;1=港币;2=美钞;3=英镑;4=不带货币;其它=不带货币表达方式</param>
/// <param name="fmoney">传入的int数字</param>
/// <returns>返回转换的货币表达形式</returns>
public static string ConvertCurrency(decimal fmoney)
{
  CultureInfo cul = null;
  int ftype=4;
  string _rmoney=string.Empty;
  try
  {
 switch (ftype)
 {
   case 0:
 cul = new CultureInfo("zh-CN");//中国大陆
 _rmoney = fmoney.ToString("c", cul);
 break;
   case 1:
 cul = new CultureInfo("zh-HK");//香港
 _rmoney = fmoney.ToString("c", cul);
 break;
   case 2:
 cul = new CultureInfo("en-US");//美国
 _rmoney = fmoney.ToString("c", cul);
 break;
   case 3:
 cul = new CultureInfo("en-GB");//英国
 _rmoney = fmoney.ToString("c", cul);
 break;
   case 4:
 _rmoney = string.Format("{0:n}", fmoney);//没有货币符号
 break; 

   default:
 _rmoney = string.Format("{0:n}", fmoney);
 break;
 }
  }
  catch
  {
 _rmoney = "";
  }
  return _rmoney;
}

希望本文所述对大家的C#程序设计有所帮助

(0)

相关推荐

  • C#实现将浮点数表示的货币数量以汉字大写形式输出的方法

    本文实例讲述了C#实现将浮点数表示的货币数量以汉字大写形式输出的方法.分享给大家供大家参考.具体如下: 1.函数代码 注:本段代码中能转化的最大的数为(1亿亿-0.01),如果要转化更大的浮点数,则需要做适当修改. /// <summary> /// 将字符型变量转化为大写汉语数字 /// </summary> /// <param name="ch">字符 '0'~'9'</param> /// <returns></

  • c#中判断字符串是不是数字或字母的方法

    一.判断字母 复制代码 代码如下: string str = Console.ReadLine();if (char.isLetter(str)){}else if (char.IsDigit(str)){} if(ch>='a'&&ch<='z') 小写字母if(ch>='A'&&ch<='Z') 大写字母数字也一样.判断汉字一般是输入 >255 因为汉字是大字符集二.判断输入的是不是数字 复制代码 代码如下: try{int n = 0;n

  • c#实现识别图片上的验证码数字

    public void imgdo(Bitmap img) { //去色 Bitmap btp = img; Color c = new Color(); int rr, gg, bb; for (int i = 0; i < btp.Width; i++) { for (int j = 0; j < btp.Height; j++) { //取图片当前的像素点 c = btp.GetPixel(i, j); rr = c.R; gg = c.G; bb = c.B; //改变颜色 if (r

  • C#实现将千分位字符串转换成数字的方法

    本文实例主要实现了C#将千分位字符串转换成数字的方法,对C#初学者而言有一定的借鉴价值,主要内容如下: 主要功能代码如下: /// <summary> /// 将千分位字符串转换成数字 /// 说明:将诸如"–111,222,333的千分位"转换成-111222333数字 /// 若转换失败则返回-1 /// </summary> /// <param name="thousandthStr">需要转换的千分位</param

  • C#实现大数字运算的实例代码

    C#实现大数字的运算 1.添加引用:System.Numerics.dll 2.添加命名空间:using System.Numerics; 3.实例: 3.1判断一个数字是不是质数 复制代码 代码如下: static void Main(string[] args)        {            Console.WriteLine("请输入一个很大的数字:");            string bigNumber = Console.ReadLine();        

  • C#识别出图片里的数字和字母

    一个图片识别小工具,原先主要是识别以前公司的软件注册码截图里的数字和字母(每次要一个一个框复制出来粘贴到注册器里,很麻烦!),因为注册码出现的字母和数字基本就那几个,所以识别库的范围设定的比较少. 原理和算法在代码中做了详细说明,功能存在很大的局限性,但我的想法是把这个思路和实现的办法共享出来. 源码下载地址: http://git.oschina.net/bobo2cj/iamge2text /* * 开发思路:图片灰度处理,二进制,然后和图片中的字二进制库精确对比 * * 获取字库:通过下面

  • C#基于纯数学方法递归实现货币数字转换中文功能详解

    本文实例讲述了C#基于纯数学方法递归实现货币数字转换中文功能.分享给大家供大家参考,具体如下: 最近由于项目的原因,需要写一个货币数字转换中文的算法,先在网了找了一下,结果发现无一列外都是用(Replace)替换的方式来实现的,所以想写个另外的算法:因为本人是学数学出身的,所以用纯数学的方法实现. 注意:本文中的算法支持小于1023 (也就是9999亿兆)货币数字转化. 货币中文说明: 在说明代码之前,首先让我们回顾一下货币的读法. 10020002.23  读为 壹仟零贰万零贰元贰角叁分 10

  • C# 中文简体转繁体实现代码

    方法一: 复制代码 代码如下: /// <summary> /// 中文字符工具类 /// </summary> private const int LOCALE_SYSTEM_DEFAULT = 0x0800; private const int LCMAP_SIMPLIFIED_CHINESE = 0x02000000; private const int LCMAP_TRADITIONAL_CHINESE = 0x04000000; [DllImport("kern

  • 使用C#实现阿拉伯数字到大写中文的转换

    先记下来,以备后用! /// <summary> /// 金额转为大写金额 /// </summary> public class MoneyConvertChinese { /// <summary> /// 金额转为大写金额 /// </summary> /// <param name="LowerMoney"></param> /// <returns></returns> publi

  • c#中文转unicode字符示例分享

    复制代码 代码如下: //可以包括其他字符 public string uncode(string str) { string outStr = ""; Regex reg = new Regex(@"(?i)//u([0-9a-f]{4})"); outStr = reg.Replace(str, delegate(Match m1) { return ((char)Convert.ToInt32(m1.Groups[1].Value, 16)).ToString

  • C# 判断字符串第一位是否为数字

    复制代码 代码如下: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Text.RegularExpressions; namespace WindowsFormsApp

随机推荐