惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
有赞技术团队
有赞技术团队
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
U
Unit 42
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Recent Announcements
Recent Announcements
Y
Y Combinator Blog
Vercel News
Vercel News
Martin Fowler
Martin Fowler
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
L
LangChain Blog
云风的 BLOG
云风的 BLOG
H
Hackread – Cybersecurity News, Data Breaches, AI and More
aimingoo的专栏
aimingoo的专栏
G
Google Developers Blog
The GitHub Blog
The GitHub Blog
N
Netflix TechBlog - Medium
Google DeepMind News
Google DeepMind News
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
F
Fortinet All Blogs

博客园 - wngwz

单点登陆 - wngwz - 博客园 IP地址 - wngwz - 博客园 简,繁体转换工具. 弹出模态窗体,关闭后。重新绑定页面(这个仅仅是对粗心大意的纪录) - wngwz - 博客园 分页存储过程 关于水晶报表的版本问题! 大年30祝大家, 不知道说还要GMail的油箱! 打印的一些知识! 求助!水晶报表! 解决把水晶报表下载到客户端过程中,出现下载整个页面(.aspx)或者直接载web页中打开word文件的问题! 收获!关于引用计数器! 把文件或图片存在数据库中! 水晶报表倒出! 关于(学习!Excel)的问题。 解决问题总结 水晶报表操作中遇到的问题 javascript 打印报表! javascript 学习
金额转换.小To大 - wngwz - 博客园
wngwz · 2006-02-08 · via 博客园 - wngwz

namespace BaseSystemFramework
{
    
using System;
    
public class Capitalization
    
{
        
public Capitalization()
        
{
        }


        
//金额数字(小写)转换成文字(大写) 
        private static string[] shuzi={"","","","","","","","","",""};
        
private static string[] danwei={"","","","","","","","","","","亿","","",""};

        
/// <summary>
        
/// 金额小写转换成大写
        
/// </summary>
        
/// <param name="payment"></param>
        
/// <returns></returns>

        public static string MoneyConvert(double payment)
        
{
            
string money;
            
int ipayment, itemp, num, length, danweinum;
            
string spayment, stemp;
            
bool yuan, wan, yi, zero;

            yi 
= false;
            wan 
= false;
            yuan 
= false;
            zero 
= false;
            money 
= "";
            ipayment 
= (int)Math.Floor(payment*100+0.5);   //转换成分并四舍五入
            if( ipayment > 0 )
            
{
                spayment 
= ipayment.ToString();    //转换成字符串
                length = spayment.Length;
                
if( length > 0 )
                
{
                    money 
= "";
                    num 
= length - 1;
                    danweinum 
= 0;
                    
while( num >= 0 )
                    
{
                        stemp 
= spayment.Substring( num, 1 );
                        itemp 
= int.Parse( stemp );
                        
if( itemp > 0 )
                        
{
                            
if( money.Length > 0 )
                            
{
                                stemp 
= shuzi[itemp] + danwei[danweinum];
                                
if( danweinum == 10 )
                                    yi 
= true;
                                
if( danweinum == 6 )
                                    wan 
= true;
                                
if( danweinum == 2 )
                                    yuan 
= true;
                                
if( danweinum > 10 )
                                    
if!yi )
                                    
{
                                        stemp 
= stemp + "亿";
                                        yi 
= true;
                                    }

                                
if( danweinum > 6 )
                                    
if!wan )
                                    
{
                                        stemp 
= stemp + "";
                                        wan 
= true;
                                    }

                                
if( danweinum > 2 )
                                    
if!yuan )
                                    
{
                                        stemp 
= stemp + "";
                                        yuan 
= true;
                                    }

                                money 
= stemp + money;
                            }

                            
else
                            
{
                                
if( danweinum > 0 )
                                
{
                                    stemp 
= shuzi[itemp] + danwei[danweinum];
                                    
if( danweinum == 10 )
                                        yi 
= true;
                                    
if( danweinum == 6 )
                                        wan 
= true;
                                    
if( danweinum == 2 )
                                        yuan 
= true;
                                    
if( danweinum > 10 )
                                        
if!yi )
                                        
{
                                            stemp 
= stemp + "亿";
                                            yi 
= true;
                                        }

                                    
if( danweinum > 6 )
                                        
if!wan )
                                        
{
                                            stemp 
= stemp + "";
                                            wan 
= true;
                                        }

                                    
if( danweinum > 2 )
                                        
if!yuan )
                                        
{
                                            stemp 
= stemp + "";
                                            yuan 
= true;
                                        }

                                    money 
= stemp + "";
                                }

                                
else
                                    money 
= shuzi[itemp] + danwei[danweinum];
                            }

                            zero 
= false;
                        }

                        
else
                        
{
                            
if( money.Length > 0 )
                                
if!zero )
                                
{
                                    money 
= shuzi[itemp] + money;
                                }

                            zero 
= true;
                        }

                        num
--;
                        danweinum
++;
                    }

                }

            }

            
return money;
        }


        
/// <summary>
        
/// 金额小写转换成大写
        
/// </summary>
        
/// <param name="payment"></param>
        
/// <returns></returns>

        public static string MoneyConvert( string payment )
        
{
            
if( payment.Length != 0)
                
return MoneyConvert( Convert.ToDouble( payment ) );
            
else
                
return MoneyConvert( Convert.ToDouble( "0" ) );
        }

    }

}