超实用c#按字节截取长度(原创)

时间:2014-09-14 09:32:02
【文件属性】:

文件名称:超实用c#按字节截取长度(原创)

文件大小:2KB

文件格式:TXT

更新时间:2014-09-14 09:32:02

c#,字节截取

1、 当字符串全部为单字节字符时,则可以用SubString方法截取指定长度即可。 2、 当字符串全部为双字节字符时,则只需要用SubString方法截取指定长度的一半 3、 当字符串为单字节双字节混合时,则我们可以用折中这样的方法来处理。 例如我们有一个长度为350字节的字符串。而我们需要截取100个字节,则我们进行如下操作: 先用SubString 方式取得100/2个字符。然后获取这50个字符的字节数。 当50个字符=100个字节时,则直接返回结果。如果还不到100个字节,则继续用SubString方法截取 (100-(50个字符的字节数))/2 的字符。如此循环直到剩下的字节数为1 或者0的时候,则停止。当剩余一个字节时,再进行判断下一个字符是否是单字节字符,如果是单字节,则把这个字符一起做为结果返回。如果双字节字符,则将下一个字符放弃,直接返回已经截取的字符串的长度。 用此方法为指数形式截取,一般截取长字符串时只需进行几步操作即可。 比如截取10000个字符,则进行最多12+1次操作即可


网友评论

  • 谢谢,谢谢谢谢
  • 不能去任意的长度,比如取4~12个单字节
  • 不错,很好用。
  • 用过好多次了,每次还是需要找代码,总是记不住。
  • 修改一下后可以用了,需要将斜杠改成反斜杠才行。。。
  • 不能用啊,会报错
  • 可以用,有帮助
  • 不能用,不能区分英文字符
  • 试过了,可以用,不过部分还是会出现乱码的情况。