C#按字节截取字符串
一行包含汉字、字母、数字的文本,如:string txt = "一段C#代码值123元,你能接收吗?"; 如果我想把数字123截出来,直接使用txt.substring(12,3),实际截出的是“你能接”。所以可以考虑先转化为字节后再截取,代码如下:
public class StringUtil { static string SubstringByte(string txt, int start, int length, string charset) { Encoding enc = Encoding.GetEncoding(charset); byte[] bytes = enc.GetBytes(txt); return enc.GetString(bytes, start, length); } }