반응형
public string Number2Hangle(long lngNumber)
{
string[] NumberChar = new string[] { "", "일", "이", "삼"
, "사", "오", "육"
, "칠", "팔", "구" };
string[] LevelChar = new string[] { "", "십", "백", "천" };
string[] DecimalChar = new string[] { "", "만", "억", "조", "경" };
string strMinus = string.Empty;
if (lngNumber < 0)
{
strMinus = "마이너스";
lngNumber *= -1;
}
string strValue = string.Format("{0}", lngNumber);
string NumToKorea = string.Empty;
bool UseDecimal = false;
if (lngNumber == 0) return "영";
for (int i = 0; i < strValue.Length; i++)
{
int Level = strValue.Length - i;
if (strValue.Substring(i, 1) != "0")
{
UseDecimal = true;
if (((Level - 1) % 4) == 0)
{
if(DecimalChar[(Level - 1) / 4] != string.Empty
&& strValue.Substring(i, 1) == "1")
NumToKorea = NumToKorea + DecimalChar[(Level - 1) / 4];
else
NumToKorea = NumToKorea
+ NumberChar[int.Parse(strValue.Substring(i, 1))]
+ DecimalChar[(Level - 1) / 4];
UseDecimal = false;
}
else
{
if (strValue.Substring(i, 1) == "1")
NumToKorea = NumToKorea
+ LevelChar[(Level - 1) % 4];
else
NumToKorea = NumToKorea
+ NumberChar[int.Parse(strValue.Substring(i, 1))]
+ LevelChar[(Level - 1) % 4];
}
}
else
{
if ((Level % 4 == 0) && UseDecimal)
{
NumToKorea = NumToKorea + DecimalChar[Level / 4];
UseDecimal = false;
}
}
}
return strMinus + NumToKorea;
}
}
'프로그래밍 > C#' 카테고리의 다른 글
| [C#]엑셀 컬럼 숫자 문자로 변환 (0) | 2017.04.18 |
|---|---|
| [C#] 모서리가 둥근 윈도우 폼 만들기 (2) | 2017.04.17 |
| [C#]숫자 천단위 콤마(,) 표시 (0) | 2017.04.13 |
| [C#]숫자, 점(.), 백스페이스만 입력되도록 하는 텍스트 박스 (0) | 2017.04.12 |
| [C#]소수점 이하 자리 버림 (0) | 2017.04.12 |