产品开发篇(业务需求至上):
TODO:
1,关于产品开发中,最重要的是概要设计(业务需求)
2,业务需求里,涵盖了严谨的业务逻辑和复杂数据操作
讲解篇:1,业务逻辑复杂型,2,复杂数据操作篇
1,业务逻辑复杂型
var infoflag = true; //是否需要给父页面赋值 True 弹出框口 需要 False 打开新页面 不需要 var handleurl = "/Handle/UserRoleManage/UserHandler.ashx"; //一般处理程序路径 var chkProQuery = new Array("ddlPro", "ddlCity", "ddlCoun", "ddlTown", "ddlVill", "ddlGird");//联动select改变对应checkbox控制全选反选 初始化<省市县乡镇村网格[用户角色类别] var chkNameArray = new Array("protypechk", "citytypechk", "countypechk", "towntypechk", "villtypechk", "girdtypechk");//初始化数组<省市县乡镇村网格[用户角色类别]名称name> var chkNameIdArray = new Array(["protypechk", "protypechk_"], ["citytypechk", "citytypechk_"], ["countypechk", "countypechk_"], ["towntypechk", "towntypechk_"], ["villtypechk", "villtypechk_"], ["girdtypechk", "girdtypechk_"]);//初始化数组<省市县乡镇村网格[用户角色类别]名称name,id> //var chkNameAndIdArray = new Array(["procheckbox", "prochk_"], ["citycheckbox", "citychk_"], ["councheckbox", "counchk_"], ["towncheckbox", "townchk_"], ["villcheckbox", "villchk_"], ["girdcheckbox", "girdchk_"]);//初始化数组<省市县乡镇村网格[用户角色]名称name,id> $(function () { $.each(chkNameArray, function (value, idex) { //RequiredCheckbox(idex);//索引 RequiredCheckbox(chkNameArray[value]);//名称 }); }); function ProQuery(ddlName, chkId) { $.each(chkProQuery, function (value, idex) { if (ddlName == idex) { $("[id^=" + chkId + "]").each(function () { if ($("[id=" + ddlName + "]").val() == "2") {//清除 $(this).attr('checked', false); } else if ($("[id=" + ddlName + "]").val() == "0") {//全选 $(this).attr('checked', 'checked'); } else if ($("[id=" + ddlName + "]").val() == "1") {//反选 $(this).attr("checked", !this.checked); } }) } }); } /*地区控件选中后执行的方法*/ function linkage() { clearFields2();//取消禁用 var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) switch (areaLevel) { case 1: $("table tr").eq(2).attr("disabled", "disabled");//禁用省,省级角色类别 break; case 2: $("table tr:lt(6):not(:lt(2))").attr("disabled", "disabled");//禁用省,省级角色类别,禁用市,市级角色类别 break; case 3: $("table tr:lt(8):not(:lt(2))").attr("disabled", "disabled");//禁用省,省级角色类别,禁用市,市级角色类别,县,县级角色类别,乡,乡级角色类别 break; case 4: $("table tr:lt(10):not(:lt(2))").attr("disabled", "disabled");//禁用省,省级角色类别,禁用市,市级角色类别,县,县级角色类别,乡,乡级角色类别,村,村级角色类别 break; case 5: $("table tr:lt(12):not(:lt(2))").attr("disabled", "disabled");//禁用省,省级角色类别,禁用市,市级角色类别,县,县级角色类别,乡,乡级角色类别,村,村级角色类别,网格,网格角色类别 break; default: break; } } /*省市县乡镇村网格[用户角色类别] 2015/2/11 [方]*/ function RequiredNameIdCheckbox(chkName, chkId) {//单选框名称 var typestr = "";//用户角色类别名称[省市县乡镇村网格] 1角色类别[1],2角色类别[2] $("[name=" + chkName + "][checked]").each(function () { var cx = $(this).attr("id"); typestr += cx.replace(chkId, "");//省市县乡镇村网格角色类别名称 }) return typestr; } /*[新增] 省市县乡镇村网格[用户角色][合并] 2015/03/02 [方]*/ /*function RequiredNameAndIdCheckbox(chkName, chkId) { var typestr = "";//省市县乡镇村网格[用户角色] $("[name=" + chkName + "][checked]").each(function () { var cx = $(this).attr("id"); typestr += cx.replace(chkId, "") + "^";//省市县乡镇村网格角色名称 }); typestr = typestr.substr(0, typestr.length - 1); return typestr; }*/ /*省市县乡镇村网格[用户角色类别] 单选[点击不取消勾选] 2015/2/11 [方]*/ function RequiredCheckbox(chkName) {//单选框名称 $(":checkbox[name=" + chkName + "]").each(function () { $(this).click(function () { if ($(this).attr("checked")) { $(":checkbox[name=" + chkName + "]").removeAttr('checked'); $(this).attr('checked', 'checked'); } else { $(this).attr("checked", "checked"); } }); }); } function CheckInput() { var result = $("#form1").validate({ rules: { uc_btnSelectArea1$txtAreaName: { requiredgPID: true }, procheckbox: {//省级角色 requiredproCheck: true }, citycheckbox: {//市级角色 requiredcityCheck: true }, councheckbox: {//县角色 requiredcounCheck: true }, towncheckbox: {//乡镇角色 requiredtownCheck: true }, villcheckbox: {//村级角色 requiredvillCheck: true }, girdcheckbox: {//网格角色 requiredgirdCheck: true } } }); return result.form(); }; //[省]用户角色必选 jQuery.validator.addMethod("requiredproCheck", function (value, element) { var chkvalue = false; var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) if (areaLevel < 1) { $("[name='procheckbox'][checked]").each(function () { chkvalue = true; }); } else { chkvalue = true; } return chkvalue; }, "*至少选择一个省级用户角色") //[市]用户角色必选 jQuery.validator.addMethod("requiredcityCheck", function (value, element) { var chkvalue = false; var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) if (areaLevel < 2) { $("[name='citycheckbox'][checked]").each(function () { chkvalue = true; }); } else { chkvalue = true; } return chkvalue; }, "*至少选择一个市级用户角色") //[县]用户角色必选 jQuery.validator.addMethod("requiredcounCheck", function (value, element) { var chkvalue = false; var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) if (areaLevel < 3) { $("[name='councheckbox'][checked]").each(function () { chkvalue = true; }); } else { chkvalue = true; } return chkvalue; }, "*至少选择一个县级用户角色") //[乡镇]用户角色必选 jQuery.validator.addMethod("requiredtownCheck", function (value, element) { var chkvalue = false; var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) if (areaLevel < 4) { $("[name='towncheckbox'][checked]").each(function () { chkvalue = true; }); } else { chkvalue = true; } return chkvalue; }, "*至少选择一个乡镇级用户角色") //[村]用户角色必选 jQuery.validator.addMethod("requiredvillCheck", function (value, element) { var chkvalue = false; var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) if (areaLevel < 5) { $("[name='villcheckbox'][checked]").each(function () { chkvalue = true; }); } else { chkvalue = true; } return chkvalue; }, "*至少选择一个村级用户角色") //[网格]用户角色必选 jQuery.validator.addMethod("requiredgirdCheck", function (value, element) { var chkvalue = false; var areacode = $("#uc_btnSelectArea1_hidAreaCode").val(); var areaLevel = GetJbByCode(areacode);//勾选的当前地区级别(0:省级1:市级2:县级3:乡镇级4:村级) if (areaLevel < 6) { $("[name='girdcheckbox'][checked]").each(function () { chkvalue = true; }); } else { chkvalue = true; } return chkvalue; }, "*至少选择一个网格用户角色") jQuery.validator.addMethod("requiredgPID", function (value, element) { return value != ""; }, "*地区不能为空!"); function Save(flag) { if (!CheckInput()) return; var action = "padd"; /*省市县乡镇村网格[用户角色]*/ var chkprostr = "";//省 $("[name='procheckbox'][checked]").each(function () { var cx = $(this).attr("id"); chkprostr += cx.replace("prochk_", "") + "^"; }); var chkcitystr = "";//市 $("[name='citycheckbox'][checked]").each(function () { var cx = $(this).attr("id"); chkcitystr += cx.replace("citychk_", "") + "^"; }); var chkcounstr = "";//县 $("[name='councheckbox'][checked]").each(function () { var cx = $(this).attr("id"); chkcounstr += cx.replace("counchk_", "") + "^"; }); var chktownstr = "";//乡镇 $("[name='towncheckbox'][checked]").each(function () { var cx = $(this).attr("id"); chktownstr += cx.replace("townchk_", "") + "^"; }); var chkvillstr = "";//村 $("[name='villcheckbox'][checked]").each(function () { var cx = $(this).attr("id"); chkvillstr += cx.replace("villchk_", "") + "^"; }); var chkgirdstr = "";//网格 $("[name='girdcheckbox'][checked]").each(function () { var cx = $(this).attr("id"); chkgirdstr += cx.replace("girdchk_", "") + "^"; }); /*[新增] 省市县乡镇村网格[用户角色][合并] 2015/03/02 [方]*/ /*TODO: 1、省市县乡镇村网格合并格式:以","隔开 2、其中每一单项<省市县乡镇村网格>,以"^"隔开,去除最后一个空字符 3、最终合并格式如: b3cff5e4-d7c4-473f-8a80-1f8681562677^8a5baa20-fe3a-4005-8c3b-718eb64d7281, 4cfd5cb4-d04b-46c0-8738-c8119d2a9fbb^d35979ad-96c7-4dd5-a4c2-c832ac0b56d8, fd33d69e-ac6e-4c62-99cc-c8e69718b97b^a81d3ab7-aba0-4b6f-a730-d2aa5eaa512f, 352b986b-7c44-48e4-a088-b7f4d56c8201^b8775c0a-fcdd-4aa6-bef5-b9e6ea895ebe, ebbeb3ad-11c1-48d7-9268-ee14abfa5c89^ee839f4f-1daf-45ca-bd8e-67fd0ba264f0, ea2d104b-c77e-4875-b703-bbf52a5f2978^091a04db-0af2-4cb1-8af8-eb14d6173c8b, 4、暂时注释 */ /*var typenameidStr = ""; $.each(chkNameAndIdArray, function (value, idex) { var typeNameIdArray = idex; var sArray = ""; $.each(typeNameIdArray, function (value, idex) { sArray += idex + ","; }); sArray = sArray.substr(0, sArray.length - 1).split(','); typenameidStr += RequiredNameAndIdCheckbox(sArray[0], sArray[1]) + ","; }); typenameidStr = typenameidStr.substr(0, typenameidStr.length - 1); return typenameidStr;*/ /*省市县乡镇村网格[用户角色类别]*/ var typestr = ""; $.each(chkNameIdArray, function (value, idex) { var typeArray = idex; var sArray = ""; $.each(typeArray, function (value, idex) { sArray += idex + ","; }); sArray = sArray.substr(0, sArray.length - 1).split(','); typestr += RequiredNameIdCheckbox(sArray[0], sArray[1]) + "^"; }); /*地区编码 用户角色[省、市、县、乡镇、村、网格] 用户角色[省、市、县、乡镇、村、网格]类别 */ var data = "action=" + action + "&sAreaCode=" + $("#uc_btnSelectArea1_hidAreaCode").val() + "&chkprostr=" + chkprostr + "&chkcitystr=" + chkcitystr + "&chkcounstr=" + chkcounstr + "&chktownstr=" + chktownstr + "&chkvillstr=" + chkvillstr + "&chkgirdstr=" + chkgirdstr + "&typestr=" + typestr; $.ajax({ type: "POST", //用POST方式传输 dataType: "json", //数据格式:JSON url: handleurl, //目标地址 data: data, cache: false, success: function (data) { window.parent.document.getElementById("hidIsChange").value = "1"; $.messager.alert('信息', data.data, 'info'); clearFields1(); //清空界面和隐藏域ID }, error: function (XmlHttpRequest, textStatus, errorThrown) { $.messager.alert('错误', errorThrown, 'error'); }, beforeSend: function () { if (flag) $("body").mask(); else parent.$("body").mask(); }, complete: function () { if (flag) $("body").unmask(); else parent.$("body").unmask(); } }); } //设置界面属性值 function clearFields1() { $("#T_Content tr").attr("disabled", false);// 取消禁用 //$("#T_Content :input:not('.roles')").clearFields(); //清空界面 } function clearFields2() { $("#T_Content tr").attr("disabled", false);// 取消禁用 }
2,复杂数据操作篇
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using BF.Model; using BF.IBLL.lsly; using Base.Core.UnityFactory; using System.Configuration; using BF.Common; using System.Diagnostics; namespace BF.Web.lsly { public partial class LSLSM : BasePage { private Int32 DynamicCount { get; set; } //零散烈士陵园(广宁县):烈士墓数量 private string GetLSLSMkey { get { return ConfigurationManager.AppSettings["sOrgKey"].ToString();//机构编码:当前登录用户(如:广宁县机构key:5132b925-4a58-459c-8077-5ea54754d69a) } } /*[编辑]使用属性SMartyrKey代替方法GetMartyrKeyBysRelationKey获取[烈士key:sMartyrKey] 2015/03/18 [方]*/ /*[编辑]属性SMartyrKey名称,书写调整(sMartyrKey变更SMartyrKey;自定义私有字段smartyrKey变更_smartyrKey) 2015/04/22 [方] */ private string _smartyrKey;//自定义私有属性_smartyrKey public string SMartyrKey { get { if (!string.IsNullOrEmpty(_smartyrKey)) { MartyrsAssociation modelAssoc = new MartyrsAssociation(); modelAssoc.sRelationKey = _smartyrKey;//烈士墓key:烈士key(烈士和烈士墓关联获取烈士key) modelAssoc = iLSLSMBLL.GetModel(modelAssoc);//烈士和烈士墓关联实体 _smartyrKey = modelAssoc.sMartyrKey;//[sMartyrKey 烈士key] } return _smartyrKey;//这里取出私有属性_smartyrKey的值 } } private readonly Imemorial_MartyrTombBLL iLSMBLL = IOCFactory.GetIOCResolve<Imemorial_MartyrTombBLL>("Imemorial_MartyrTombBLL");//烈士墓接口 private readonly IMartyrsAssociationBLL iLSLSMBLL = IOCFactory.GetIOCResolve<IMartyrsAssociationBLL>("IMartyrsAssociationBLL");//烈士和烈士墓关联信息接口 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { /*[编辑]零散烈士墓方法 2015/03/18 [方]*/ DynamicCreation(); } } /*[新增]动态生成表格:接收一参数,实现查询数据库<获取数量> 按照现有风格排序 2015/03/10 [方]*/ /* Tips: 1、在后台写C#程序,取得当前要操作的键值,然后根据键值查询数量[填充数据项](烈士系统中正在使用) 2、JS打印,AJAX读取数据库数据[填充数据项](暂时用不到) * */ #region [广宁县零散烈士陵园] public void DynamicCreation() { /*[测试:数据项来自于零散烈士墓信息] 根据传入条件查询[dbo.memorial_MartyrTomb]列表数据项*/ StringBuilder sb = new StringBuilder(); /*数据源:烈士墓,烈士和烈士墓*/ List<memorial_MartyrTomb> list = new List<memorial_MartyrTomb>(); memorial_MartyrTomb model = new memorial_MartyrTomb(); model.sOrgKey = GetLSLSMkey; list = iLSMBLL.GetList(model); if (list != null) { DynamicCount = list.Count() - 1; } /*方法实现*/ if (DynamicCount > 0) { int numberOfRows = DynamicCount / 20;//行数 int remainderRows = DynamicCount % 20;//行数余数 /*20 40 60,... 行数处理:行数减一,以便打印重复行*/ if (remainderRows == 0) { numberOfRows = numberOfRows - 1; } int multiple = DynamicCount / 2;//倍数 int remainder = DynamicCount % 2;//余数 /* TODO:左边是2的奇数倍 右边是2的偶数倍[依据:倍数,余数] 20为一行[单位:行数(20一行)], 逐次计算[依据第一行], [特殊处理]补空td [特殊处理]合并多行一起遍历 */ /*[编辑]动态生成表格:合并行(第一行和其它行合并) 2015/03/10 [方]*/ for (int i = 0; i <= numberOfRows; i++)//遍历行数 { /*排版风格:依据园区英烈.html*/ sb.Append("<div class=\"hang\">"); sb.Append("<div class=\"hangname\">"); /*[编辑]动态生成表格:每一行第一列[新增]行编号 2015/03/11 [方]*/ string input = (i + 1).ToString(); input = GetRowsName(input); sb.Append(input); sb.Append("</div>"); sb.Append("<div class=\"yinglei\">"); sb.Append("<ul>"); for (int j = 1; j <= 20; j++) { /*[特殊处理]:判断当前行,当前列是否有值:有,打印td 没有,补空td*/ /*[思路]:左边,以19为单位,逐次累加20 与 当前数量比对*/ int tempOdd = 19 + (20 * i);//左边计算单位:19+20的倍数 string skey = "";//[sRelationKey 烈士墓key] string lsm = "";//[暂时:作为烈士名 后期待调整] string sLSSkey = "";//[sMartyrKey 烈士key] if (j <= 10) { int rewritetempOdd = ((tempOdd - (2 * (j - 1))) - 1); if (DynamicCount < rewritetempOdd) { sb.Append("<li>"); sb.Append("</li>"); } else { sb.Append("<li>"); skey = list[rewritetempOdd].sKey;//[sRelationKey 烈士墓key] lsm = list[rewritetempOdd].sJieS;//[暂时:作为烈士名 后期待调整] /*[编辑]使用属性sMartyrKey代替方法GetMartyrKeyBysRelationKey获取[烈士key:sMartyrKey] 2015/03/18 [方]*/ //sLSSkey = GetMartyrKeyBysRelationKey(skey);//[sMartyrKey 烈士key] _smartyrKey = skey;//这里给私有属性_smartyrKey赋值 sLSSkey = SMartyrKey;//这里给私有变量sLSSkey赋值(自定义属性SMartyrKey:依据烈士墓key获取烈士key的值) sb.Append("<a href='/CemeteryWebSite/BritishListDetail.aspx?sType=6&sKey=" + sLSSkey + "' target='_parent'>"); sb.Append("<span class=\"lsmu\">" + lsm + "</span>"); sb.Append("</a>"); sb.Append("</li>"); } } else { /*[思路]:右边,以2的倍数为单位,逐次累加20 20 18 16 与 当前数量比对*/ int rewrite = j - 10; int tempEven = (2 * rewrite) + (20 * i) - 1;//右边计算单位:2的倍数+20的倍数 if (DynamicCount < (tempEven)) { sb.Append("<li>"); sb.Append("</li>"); } else { sb.Append("<li>"); skey = list[tempEven].sKey;//[sRelationKey 烈士墓key] lsm = list[tempEven].sJieS;//[暂时:作为烈士名 后期待调整] /*[编辑]使用属性sMartyrKey代替方法GetMartyrKeyBysRelationKey获取[烈士key:sMartyrKey] 2015/03/18 [方]*/ //sLSSkey = GetMartyrKeyBysRelationKey(skey);//GetMartyrKeyBysRelationKey:返回烈士key [sMartyrKey 烈士key] _smartyrKey = skey;//这里给私有属性_smartyrKey赋值 sLSSkey = SMartyrKey;//这里给私有变量sLSSkey赋值(自定义属性SMartyrKey:依据烈士墓key获取烈士key的值) sb.Append("<a href='/CemeteryWebSite/BritishListDetail.aspx?sType=6&sKey=" + sLSSkey + "' target='_parent'>");//烈士链接(链接至:园区英烈--烈士英名录) sb.Append("<span class=\"lsmu\">" + lsm + "</span>");//烈士姓名 sb.Append("</a>"); sb.Append("</li>"); } } } sb.Append("</ul>"); sb.Append("</div>"); sb.Append("</div>"); /*[编辑]动态生成表格:10行间隔一行(<tr></tr>) 2015/03/12 [方]*/ int lineSpacing = (i + 1) % 10;//行分栏:10行添加一空行,去除第一行 if (lineSpacing == 0 && i != 1) { sb.Append("<div class=\"fengge\"></div>"); } } } else { /*[新增]提示信息:暂无烈士纪念碑信息 2015/03/11 [方] */ sb.Append("<div style=\"width:1100px;height:60px;margin:0px auto;\">"); sb.Append("<span style=\"color:red;font-size:24px;font:'华文彩云,楷体,宋体';\">暂无零散烈士纪念碑信息...</span>"); sb.Append("<div>"); /*[新增]提示信息:调整页面高度,拉伸提示信息与底部的距离 2015/03/12 [方]*/ sb.Append("<div style=\"height:410px;\"></div>"); } this.ltrdynamicCreation.Text = sb.ToString(); } #endregion /*[编辑]注释:通过烈士墓key(通过烈士和烈士墓关联信息)获取烈士key 2015/03/18 [方]*/ /// 通过烈士墓key(通过烈士和烈士墓关联信息)获取烈士key /// </summary> /// <param name="sRelationKey">烈士墓key</param> /// <returns>烈士key</returns> //private string GetMartyrKeyBysRelationKey(string sRelationKey) //{ // string sLSSkey = "";//[sMartyrKey 烈士key] // if (!string.IsNullOrEmpty(sRelationKey)) // { // MartyrsAssociation modelAssoc = new MartyrsAssociation(); // modelAssoc.sRelationKey = sRelationKey;//烈士墓key:烈士key(烈士和烈士墓关联获取烈士key) // modelAssoc = iLSLSMBLL.GetModel(modelAssoc);//烈士和烈士墓关联实体 // sLSSkey = modelAssoc.sMartyrKey;//[sMartyrKey 烈士key] // } // return sLSSkey; //} /*[新增]非功能性辅助方法:实现数字(0~9)转换成汉字(零~九) 2015/03/12 [方]*/ /*TODO: 非功能性辅助方法: 1、实现数字(0~9)转换成汉字(零~九) 2、2位数字:0补十 3、2位数字及以上:0补零(不变) 4、特殊行(十的整数倍行,十一~十九行) 普通行(剩余行)涉及调用方法名称:GetOneNine(string input); */ /*[新增]数字转换为汉字(按照现有风格) 2015/03/12 [方]*/ #region 非功能性辅助方法,数字转换为汉字(按照现有风格)方法名称:GetRowsName(string input); private string GetRowsName(string input) { if (String.IsNullOrEmpty(input)) return ""; // 如果输入为空则返回空 string src = input; // 待转换字符串 string ret = ""; // 转换返回字符串 int rewrite = Convert.ToInt32(src); if (src.Length == 2 && ((rewrite % 10) == 0))//处理10的整数倍的数字 { switch (src[0]) { case '1': ret += "十行"; break; case '2': ret += "二十行"; break; case '3': ret += "三十行"; break; case '4': ret += "四十行"; break; case '5': ret += "五十行"; break; case '6': ret += "六十行"; break; case '7': ret += "七十行"; break; case '8': ret += "八十行"; break; case '9': ret += "九十行"; break; default: break; } return ret; } for (int i = 0; i < src.Length; i++) { if (src.Length == 2 && src[0] == '1' && !src.Equals("10"))//处理11~19的数字 { ret += "十" + GetOneNine(src[1].ToString()); return ret; } } ret = GetOneNine(src);//处理其它数字 return ret; } #endregion /*[新增]处理11~19的数字及其它 2015/03/12 [方]*/ #region 处理11~19的数字及其它(通用方法)名称:GetOneNine(string input) private string GetOneNine(string input) { if (String.IsNullOrEmpty(input)) return ""; // 如果输入为空则返回空 string src = input; // 待转换字符串 string ret = ""; // 转换返回字符串 for (int i = 0; i < src.Length; i++) { char output = src[i]; switch (output) { case '0': ret += "零"; break; case '1': ret += "一"; break; case '2': ret += "二"; break; case '3': ret += "三"; break; case '4': ret += "四"; break; case '5': ret += "五"; break; case '6': ret += "六"; break; case '7': ret += "七"; break; case '8': ret += "八"; break; case '9': ret += "九"; break; default: break; } } return ret + "行"; } #endregion } }
时间: 2024-12-29 05:51:36