社区
C#
帖子详情
在c#中,我如何将汉字按照两个字节截取,字符按一个字节截取?在线等
iamjialin
2006-11-01 09:06:49
有段报文如下:
999888 中国 01
前6个字节是固定,后面汉字最多为7个14个字节,不足位前面补空,
我如何用substring截取到这14个字节存放到一个变量中?
以上是总共是24个字节,但是到了.c#中就变成22个字节了
...全文
250
4
打赏
收藏
在c#中,我如何将汉字按照两个字节截取,字符按一个字节截取?在线等
有段报文如下: 999888 中国 01 前6个字节是固定,后面汉字最多为7个14个字节,不足位前面补空, 我如何用substring截取到这14个字节存放到一个变量中? 以上是总共是24个字节,但是到了.c#中就变成22个字节了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kinghawk
2006-11-01
打赏
举报
回复
C#默认是Unicode编码,你现在需要使用ANSI编码,如果要精确截取,首先需要将Unicode编码转换为ANSI编码,即1楼的方法转换为Byte数组,之后按照数组截取字节即可。
2楼的方法可行。
lovefootball
2006-11-01
打赏
举报
回复
SubString是按照位数取得
这个得用Byte取
lwjvince
2006-11-01
打赏
举报
回复
public static string ByteSubString(string strInput , int startIndex,int length)
{
strInput = strInput.Trim() ;
int byteLen = Encoding.Default.GetByteCount( strInput ) ;
if ( byteLen > length )
{
string resultStr = String.Empty ;
for ( int i = startIndex/2 ; i < strInput.Length ; i++ )
{
if ( Encoding.Default.GetByteCount( resultStr ) < length )
{
resultStr += strInput.Substring( i , 1 ) ;
}
else
{
break ;
}
}
return resultStr ;
}
else
{
return strInput ;
}
}
viena
2006-11-01
打赏
举报
回复
System.Text.Encoding.Default.GetBytes(str)
C#
按照
字节
长度
截取
字符
串
C#
按照
字节
长度
截取
字符
串,可以
截取
任意
字节
长度得
字符
串,使用了一点正则表达式。
超实用
c#
按
字节
截取
长度(原创)
1、 当
字符
串全部为单
字节
字符
时,则可以用SubString方法
截取
指定长度即可。 2、 当
字符
串全部为双
字节
字符
时,则只需要用SubString方法
截取
指定长度的一半 3、 当
字符
串为单
字节
双
字节
混合时,则我们可以用折
中
这样的方法来处理。 例如我们有
一个
长度为350
字节
的
字符
串。而我们需要
截取
100个
字节
,则我们进行如下操作: 先用SubString 方式取得100/2个
字符
。然后获取这50个
字符
的
字节
数。 当50个
字符
=100个
字节
时,则直接返回结果。如果还不到100个
字节
,则继续用SubString方法
截取
(100-(50个
字符
的
字节
数))/2 的
字符
。如此循环直到剩下的
字节
数为1 或者0的时候,则停止。当剩余
一个
字节
时,再进行判断下
一个
字符
是否是单
字节
字符
,如果是单
字节
,则把这个
字符
一起做为结果返回。如果双
字节
字符
,则将下
一个
字符
放弃,直接返回已经
截取
的
字符
串的长度。 用此方法为指数形式
截取
,一般
截取
长
字符
串时只需进行几步操作即可。 比如
截取
10000个
字符
,则进行最多12+1次操作即可
C#
高级程序设计
为什么要学习
C#
?
C#
是微软的**语言,拥有接近20年的历史和广泛的应用。目前国内对
C#
的书籍和视频相对较少,但
C#
和.NET的发展前程是十分光明的,这体现在微软公司本身强劲的实力,
C#
的开源,.NET Core社区的蓬勃发展,以及.NET开发岗位需求的不断增加。
C#
用途广泛,容易上手。可以说,如果你熟悉
C#
语言,你将不愁找不到好的工作。 本课程分为四部分(三层架构、设计模式、多线程、网络编程达人),详细的讲述了一名
C#
中
、高级程序员需要学习的各项知识,其
中
宿舍管理系统实战是重
中
之重。课程主要特点: 1. 紧跟微软
C#
发展,使用
C#
语言和开发环境版本2. 结合应用案例,力求做到深入浅出,明白易懂3. 重要概念附有英文翻译4. 独家附赠
一个
面试经验分享,希望每位学生都可以从
中
受益,在面试
中
脱颖而出5.含宿舍管理系统的讲解希望本套课程在你学习
C#
的过程
中
,可以对你有所帮助。
字符
串
截取
(按
字节
)
字符
串
截取
,按
字节
截取
字符
串,
截取
字符
串帮助类
asp.net
c#
String类添加按
字节
截取
字符
串的扩展方法
asp.net
c#
String类添加按
字节
截取
字符
串的扩展方法
C#
110,567
社区成员
642,567
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章