تبیدل عدد به رشته
چهارشنبه 9 دی 1394در این مقاله عدد را به رشته تبدیل میکنم: مثلا . 123000 را به صورت : یک صدو بیست و سه هزار
در ابتدا یک کلاس به پروژه اضافه کنید>
حالا کد های زیر را در ان کپی کنید .
using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary> /// mrchsoft.com /// </summary> public class NumToStr { public NumToStr() { // // TOD: Add constructor logic here //O } private static string[] yakan = new string[10]{ "صفر", "یک", "دو", "سه", "چهار", "پنج", "شش", "هفت", "هشت", "نه" }; private static string[] dahgan = new string[10] { "", "", "بیست", "سی", "چهل", "پنجاه", "شصت", "هفتاد", "هشتاد", "نود" }; private static string[] dahyek = new string[10] { "ده", "یازده", "دوازده", "سیزده", "چهارده", "پانزده", "شانزده", "هفده", "هجده", "نوزده" }; private static string[] sadgan = new string[10] { "", "یکصد", "دویست", "سیصد", "چهارصد", "پانصد", "ششصد", "هفتصد", "هشتصد", "نهصد" }; private static string[] vazn = new string[5] { "", "هزار", "میلیون", "میلیارد", "تریلیون" }; private static string getnum3(int num3) { string s = ""; int d3, d12; d12 = num3 % 100; d3 = num3 / 100; if (d3 != 0)s = sadgan[d3] + " و "; if ((d12 >= 10) && (d12 <= 19))s = s + dahyek[d12 - 10]; else { int d2 = d12 / 10; if (d2 != 0)s = s + dahgan[d2] + " و "; int d1 = d12 % 10; if (d1 != 0)s = s + yakan[d1] + " و "; s = s.Substring(0, s.Length - 3); };return s; } public string num2str(string snum) { string stotal = ""; try { if (snum != "") { if (snum.Length <= 15) { if (snum != "0") { snum = snum.PadLeft(((snum.Length - 1) / 3 + 1) * 3, '0'); int L = snum.Length / 3 - 1; for (int i = 0; i <= L; i++) { int b = int.Parse(snum.Substring(i * 3, 3)); if (b != 0)stotal = stotal + getnum3(b) + " " + vazn[L - i] + " و "; } stotal = stotal.Substring(0, stotal.Length - 3); } else if (snum == "0")return yakan[0]; } } } catch { } return stotal; } }
حالا کافی هست که که هرجا دوست دارید استفاده کنید .
NumToStr ns= new NumToStr(); ns.num2str("12321321");
امید وارم مفید باشه
- ASP.net
- 1k بازدید
- 10 تشکر