utf8编码检测方法分享
utf8编码检测方法分享
发布时间:2016-12-28 来源:查字典编辑
摘要:复制代码代码如下:publicboolisUtf8(byte[]rawText){boolresult=true;if(rawText==n...

复制代码 代码如下:

public bool isUtf8(byte[] rawText)

{

bool result = true;

if (rawText == null)

{

return !result;

}

int pos = 0;

while (pos < rawText.Length && result)

{

if ((rawText[pos] & 0x7F) == rawText[pos])

{

pos++;

}

else

{

int bitLen = 7;

while (((rawText[pos] >> bitLen) & 0x01) == 1 && bitLen > 0)

{

bitLen--;

}

int byteCount = 7 - bitLen;

if (byteCount > 1 && byteCount < 7)

{

for (int i = 1; i < byteCount; ++i)

{

if (pos + i >= rawText.Length || (rawText[pos + i] & 0xBF) != rawText[pos + i])

{

result = false;

break;

}

}

pos += byteCount;

}

else

{

result = false;

}

}

}

return result;

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C#教程学习
热门C#教程学习
编程开发子分类