Exemple #1
0
        public String ConvertNumberToVietnameseSpell(String strNumber, String strCurrency, ref bool result, ref String response)
        {
            SpellNumber spell     = new SpellNumber();
            String      strResult = "";

            String[] strArray;
            if ((strNumber.Contains(',')) && (strNumber.Contains('.')))
            {
                int l1 = strNumber.LastIndexOf(',');
                int l2 = strNumber.LastIndexOf('.');
                if (l1 > l2)
                {
                    //Dấu thập phân là ,
                    strNumber = strNumber.Replace(".", "");
                    strArray  = strNumber.Split(new char[] { ',' });
                    String s2 = strArray[1];
                    if ((s2.Length > 0) && Convert.ToInt32(s2) > 0)
                    {
                        strResult = String.Format("{0} phẩy {1} {2}", spell.Spell(strArray[0], "").Trim(), spell.Spell(strArray[1], "").Trim(), strCurrency);
                    }
                    else
                    {
                        strResult = String.Format("{0} {1}", spell.Spell(strArray[0], "").Trim(), strCurrency);
                    }
                }
                else
                {
                    //Dấu thập phân là .
                    strNumber = strNumber.Replace(",", "");
                    strArray  = strNumber.Split(new char[] { '.' });
                    String s2 = strArray[1];
                    if ((s2.Length > 0) && Convert.ToInt32(s2) > 0)
                    {
                        strResult = String.Format("{0} phẩy {1} {2}", spell.Spell(strArray[0], "").Trim(), spell.Spell(strArray[1], "").Trim(), strCurrency);
                    }
                    else
                    {
                        strResult = String.Format("{0} {1}", spell.Spell(strArray[0], "").Trim(), strCurrency);
                    }
                }
            }
            else
            {
                if ((strNumber.Contains(',')) || (strNumber.Contains('.')))
                {
                    strArray = strNumber.Split(new char[] { '.', ',' });
                    String s2 = strArray[1];
                    if ((s2.Length > 0) && Convert.ToInt32(s2) > 0)
                    {
                        strResult = String.Format("{0} phẩy {1} {2}", spell.Spell(strArray[0], "").Trim(), spell.Spell(strArray[1], "").Trim(), strCurrency);
                    }
                    else
                    {
                        strResult = String.Format("{0} {1}", spell.Spell(strArray[0], "").Trim(), strCurrency);
                    }
                }
                else
                {
                    strResult = spell.Spell(strNumber, strCurrency).Trim();
                }
            }

            if (strResult == "")
            {
                strResult = "Không";
            }
            char ch;

            if (strResult.Length > 1)
            {
                ch        = Char.ToUpper(strResult[0]);
                strResult = String.Format("{0}{1}", ch, strResult.Substring(1));
            }
            if (!strResult.Contains(strCurrency))
            {
                strResult = String.Format("{0} {1}", strResult, strCurrency);
            }
            return(strResult);
        }
Exemple #2
0
        public String ConvertNumberToVietnameseSpell(String strNumber, String strCurrency, ref bool result, ref String response)
        {
            SpellNumber spell = new SpellNumber();
            String strResult = "";
            String[] strArray;
            if ((strNumber.Contains(',')) && (strNumber.Contains('.')))
            {
                int l1 = strNumber.LastIndexOf(',');
                int l2 = strNumber.LastIndexOf('.');
                if (l1 > l2)
                {
                    //Dấu thập phân là ,
                    strNumber = strNumber.Replace(".", "");
                    strArray = strNumber.Split(new char[] { ',' });
                    String s2 = strArray[1];
                    if ((s2.Length > 0) && Convert.ToInt32(s2) > 0)
                        strResult = String.Format("{0} phẩy {1} {2}", spell.Spell(strArray[0], "").Trim(), spell.Spell(strArray[1], "").Trim(), strCurrency);
                    else
                        strResult = String.Format("{0} {1}", spell.Spell(strArray[0], "").Trim(), strCurrency);
                }
                else
                {
                    //Dấu thập phân là .
                    strNumber = strNumber.Replace(",", "");
                    strArray = strNumber.Split(new char[] { '.' });
                    String s2 = strArray[1];
                    if ((s2.Length > 0) && Convert.ToInt32(s2) > 0)
                        strResult = String.Format("{0} phẩy {1} {2}", spell.Spell(strArray[0], "").Trim(), spell.Spell(strArray[1], "").Trim(), strCurrency);
                    else
                        strResult = String.Format("{0} {1}", spell.Spell(strArray[0], "").Trim(), strCurrency);
                }
            }
            else
            {
                if ((strNumber.Contains(',')) || (strNumber.Contains('.')))
                {
                    strArray = strNumber.Split(new char[] { '.', ',' });
                    String s2 = strArray[1];
                    if ((s2.Length > 0) && Convert.ToInt32(s2) > 0)
                        strResult = String.Format("{0} phẩy {1} {2}", spell.Spell(strArray[0], "").Trim(), spell.Spell(strArray[1], "").Trim(), strCurrency);
                    else
                        strResult = String.Format("{0} {1}", spell.Spell(strArray[0], "").Trim(), strCurrency);
                }
                else
                {
                    strResult = spell.Spell(strNumber, strCurrency).Trim();
                }
            }

            if (strResult == "")
                strResult = "Không";
            char ch;
            if (strResult.Length > 1)
            {
                ch = Char.ToUpper(strResult[0]);
                strResult = String.Format("{0}{1}", ch, strResult.Substring(1));
            }
            if (!strResult.Contains(strCurrency))
                strResult = String.Format("{0} {1}", strResult, strCurrency);
            return strResult;

        }