文件名称:超实用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次操作即可