Ejemplo n.º 1
0
        private void ChkPort()
        {
            int nPort = CommFunc.ConvertDBNullToInt32(ComSmsConfig.ComSms);

            System.IO.Ports.SerialPort m_serialPort = new System.IO.Ports.SerialPort();
            m_serialPort.PortName = "COM" + nPort;
            m_serialPort.BaudRate = 38400;
            m_serialPort.Parity   = System.IO.Ports.Parity.Even;
            m_serialPort.DataBits = 8;
            m_serialPort.StopBits = System.IO.Ports.StopBits.One;
            if (m_serialPort.IsOpen == false)
            {
                m_serialPort.Open();/*检测端口是否打开*/
            }
            m_serialPort.Close();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 转换为人民币大写
        /// </summary>
        /// <param name="decMoney"></param>
        /// <returns></returns>
        public static string convertMoneytoRMB(decimal decMoney)
        {
            string qz = "";

            if (decMoney < 0)
            {
                qz       = "负";
                decMoney = Math.Abs(decMoney);
            }
            decMoney = CommFunc.ConvertDBNullToDecimal(decMoney.ToString("f2"));
            string strMoney, strOneNum, strTemp, strConverted;
            int    i, iLen;

            //设初值
            strConverted = "";
            strMoney     = decMoney.ToString();
            iLen         = strMoney.Length;

            //先取小数位
            if (strMoney.IndexOf(".") > 0)
            {
                strTemp = strMoney.Substring(strMoney.IndexOf(".") + 1, strMoney.Length - strMoney.IndexOf(".") - 1);
                if (strTemp.Length > 2)
                {
                    //Console.WriteLine("错误:无法计算超过2位的小数");
                    return(strConverted);
                }
                else if (strTemp == "0" || strTemp == "00" || strTemp == "")
                {
                    strTemp = "";
                }
                else
                {
                    if (strTemp.Length == 1 && strTemp != "0")
                    {
                        strConverted = converNumtoCapital(strTemp) + "角" + strConverted;
                    }
                    else
                    {
                        strOneNum    = strTemp.Substring(0, 1);
                        strConverted = converNumtoCapital(strOneNum) + (strOneNum != "0" ? "角" : "") + strConverted;
                        strOneNum    = strTemp.Substring(1, 1);
                        strConverted = strConverted + (strOneNum != "0" ? converNumtoCapital(strOneNum) + "分" : "");
                    }
                }
            }

            //取整数部分
            if (strMoney.IndexOf(".") < 0)
            {
                strTemp = strMoney;
            }
            else
            {
                strTemp = strMoney.Substring(0, strMoney.IndexOf("."));
            }

            iLen = strTemp.Length;
            if (iLen > 0 && decimal.Parse(strTemp) != 0)
            {
                strConverted = "元" + strConverted;

                for (i = 0; i < iLen; ++i)
                {
                    strOneNum = strTemp.Substring(iLen - 1 - i, 1);
                    //if (strOneNum == "0")
                    //{
                    //    //Console.WriteLine(strConverted.Substring(0, 1));
                    //    if ((strConverted.Substring(0, 1) == "零" || strConverted.Substring(0, 1) == "元" || strConverted.Substring(0, 1) == "万" || strConverted.Substring(0, 1) == "亿") && !((i + 1) % 12 == 0 || (i + 1) == 5 || (i + 1) % 9 == 0))
                    //        continue;
                    //    else
                    //        strConverted = converNumtoCapital(strOneNum) + strConverted;
                    //}

                    //Console.WriteLine((i + 1) % 4);

                    if ((i + 1) == 1)
                    {
                        strConverted = (strOneNum == "0" ? "" : converNumtoCapital(strOneNum)) + strConverted;
                    }
                    else if (((i + 1) % 4 == 2 || (i + 1) == 2) && i % 4 != 0 && i % 8 != 0)
                    {
                        if (strOneNum == "0")
                        {
                            if (strConverted.Substring(0, 1) == "零" || strConverted.Substring(0, 1) == "元" || strConverted.Substring(0, 1) == "万" || strConverted.Substring(0, 1) == "亿")
                            {
                                continue;
                            }
                            else
                            {
                                strConverted = "零" + strConverted;
                            }
                        }
                        else
                        {
                            strConverted = converNumtoCapital(strOneNum) + "拾" + strConverted;
                        }
                    }
                    else if (((i + 1) % 4 == 3 || (i + 1) == 3) && i % 4 != 0)
                    {
                        if (strOneNum == "0")
                        {
                            if (strConverted.Substring(0, 1) == "零" || strConverted.Substring(0, 1) == "元" || strConverted.Substring(0, 1) == "万" || strConverted.Substring(0, 1) == "亿")
                            {
                                continue;
                            }
                            else
                            {
                                strConverted = "零" + strConverted;
                            }
                        }
                        else
                        {
                            strConverted = converNumtoCapital(strOneNum) + "佰" + strConverted;
                        }
                    }
                    else if ((i + 1) % 4 == 0 && i % 4 != 0)
                    {
                        if (strOneNum == "0")
                        {
                            if (strConverted.Substring(0, 1) == "零" || strConverted.Substring(0, 1) == "元" || strConverted.Substring(0, 1) == "万" || strConverted.Substring(0, 1) == "亿")
                            {
                                continue;
                            }
                            else
                            {
                                strConverted = "零" + strConverted;
                            }
                        }
                        else
                        {
                            strConverted = converNumtoCapital(strOneNum) + "千" + strConverted;
                        }
                    }
                    else if (i % 4 == 0 && i % 8 != 0)
                    {
                        //Console.WriteLine("万位{0}", i);
                        strConverted = (strOneNum == "0" ? "" : converNumtoCapital(strOneNum)) + "万" + strConverted;
                    }
                    else if (i % 8 == 0)
                    {
                        //Console.WriteLine("亿位{0}", i);
                        if (strConverted.Substring(0, 1) == "万")
                        {
                            strConverted = strConverted.Substring(1, strConverted.Length - 1);
                        }
                        strConverted = (strOneNum == "0" ? "" : converNumtoCapital(strOneNum)) + "亿" + strConverted;
                    }
                    else
                    {
                        //Console.WriteLine(i);
                        strConverted = converNumtoCapital(strOneNum) + strConverted;
                    }
                }
            }

            return(qz + strConverted);
        }