截取字符串substring()

因为中文和英文所占位置不同,一个能显示5个中文的位置应该能显示10个英文,
这个字符串操作函数很好用,是CSDN里写的。

  ///   内容摘要:按字节截断字符串。  
                  ///   </summary>  
                  public   static   string   GetSubString(string   mText,int   startIndex,int   byteCount)  
                  {  
                          if(byteCount   <   1   )   return   string.Empty;  
                         
                          if(     System.Text.Encoding.Default.GetByteCount(mText)<=   byteCount)  
                          {   
                                  return   mText;  
                          }  
                          else  
                          {  
                                  if(startIndex   ==   0)  
                                  {  
                                          byte[]   txtBytes   =   System.Text.Encoding.Default.GetBytes(mText);  
                                          byte[]   newBytes   =   new   byte[byteCount];  
                                   
                                          for(int   i=0;i<byteCount;i++)   
                                                  newBytes[i]   =   txtBytes[i];  
   
                                          return   System.Text.Encoding.Default.GetString(newBytes);  
                                  }  
                                  else  
                                  {  
                                          string   tmp   =   GetSubString(mText,0,startIndex-1);  
                                          mText   =   mText.Substring(tmp.Length);   
                                          return   GetSubString(mText,0,byteCount);  
                                  }  
                          }  
                  }  
                  public   static   string   GetSubString(string   mText,int   startIndex)            
                  {  
                          return   GetSubString(mText,startIndex,System.Text.Encoding.Default.GetByteCount(mText)-startIndex+1);  
                  }



使用方法:
在数据绑定的地方输入这个,代替原来的<% Eval("text") %>
 <%# GetSubString(DataBinder.Eval(Container.DataItem,"text").ToString(),0,10)%>

转载于:https://www.cnblogs.com/xingyao/archive/2007/11/18/963207.html

回答: 在C#中,可以使用Substring方法来截取字符串。该方法接受两个参数,第一个参数是起始位置的索引,第二个参数是要截取的字符数。例如,oriString.Substring(0, 2)将从第一个字符开始截取2个字符,输出结果为"He"。而oriString.Substring(2, 3)将从第一个'l'开始截取3个字符,输出结果为"llo"。如果只传入一个参数,即oriString.Substring(6),则从第七个字符开始截取到字符串的末尾,输出结果为"Kitty!"。需要注意的是,当指定的索引超出字符串的长度时,会发生字符串截取越界的问题,因此在使用Substring方法时需要注意参数的合法性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [C#中截取字符串 Substring 使用方法](https://blog.csdn.net/ba_wang_mao/article/details/107505387)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Java截取字符串substring)](https://blog.csdn.net/weixin_40052298/article/details/121868965)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值