c#获取字符串宽度(字节数方法)
2011-09-08 09:56
411 查看
/**//// /// /// /// /// ///
private ArrayList GetSeparateSubString(string mOrigianlString, int subStringCharNumber)
{
ArrayList resultList = new ArrayList();
string tempStr = mOrigianlString;
int charNumber = subStringCharNumber;
int totalCount = 0;
string mSubStr = "";
for (int i = 0; i < tempStr.Length; i++)
{
string mChar = tempStr.Substring(i, 1);
int byteCount = Encoding.Default.GetByteCount(mChar);
if (byteCount == 1)
{
totalCount++;
mSubStr += mChar;
if (totalCount == charNumber || i == tempStr.Length - 1)
{
resultList.Add(mSubStr);
totalCount = 0;
mSubStr = "";
}
}
else if (byteCount > 1)
{
totalCount += 2;
if (totalCount > charNumber )
{
resultList.Add(mSubStr);
if (i == tempStr.Length - 1)
{
mSubStr = mChar;
resultList.Add(mSubStr);
}
else
{
totalCount = 2;
mSubStr = mChar;
}
}
else if (totalCount == charNumber)
{
mSubStr += mChar;
resultList.Add(mSubStr);
totalCount = 0;
mSubStr = "";
}
else if (i == tempStr.Length - 1)
{
mSubStr += mChar;
resultList.Add(mSubStr);
}
else
{
mSubStr += mChar;
}
}
}
return resultList;
}
private ArrayList GetSeparateSubString(string mOrigianlString, int subStringCharNumber)
{
ArrayList resultList = new ArrayList();
string tempStr = mOrigianlString;
int charNumber = subStringCharNumber;
int totalCount = 0;
string mSubStr = "";
for (int i = 0; i < tempStr.Length; i++)
{
string mChar = tempStr.Substring(i, 1);
int byteCount = Encoding.Default.GetByteCount(mChar);
if (byteCount == 1)
{
totalCount++;
mSubStr += mChar;
if (totalCount == charNumber || i == tempStr.Length - 1)
{
resultList.Add(mSubStr);
totalCount = 0;
mSubStr = "";
}
}
else if (byteCount > 1)
{
totalCount += 2;
if (totalCount > charNumber )
{
resultList.Add(mSubStr);
if (i == tempStr.Length - 1)
{
mSubStr = mChar;
resultList.Add(mSubStr);
}
else
{
totalCount = 2;
mSubStr = mChar;
}
}
else if (totalCount == charNumber)
{
mSubStr += mChar;
resultList.Add(mSubStr);
totalCount = 0;
mSubStr = "";
}
else if (i == tempStr.Length - 1)
{
mSubStr += mChar;
resultList.Add(mSubStr);
}
else
{
mSubStr += mChar;
}
}
}
return resultList;
}
相关文章推荐
- c#获取字符串宽度的示例代码(字节数方法)
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- c#获取字符串宽度(像数方法)
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#与JS实现 获取指定字节长度 中英文混合字符串 的方法
- C#实现 获取指定字节长度 中英文混合字符串 的方法
- C#中获取字符串字节长度的方法
- c#枚举类型的内容全部获取和字符串转换为枚举类型的方法
- C#获取文件MD5值或者字符串MD5值方法
- 向C#的String类添加按字节截取字符串的扩展方法
- C# 设置和获取一个字节的某一位的值的方法 .
- C#实现字符串,文件获取Md5加密校验方法
- C#最简单的获取单双字节字符串的长度
- C# 获取字符串长度,一个汉字算两个字节
- C# 设置和获取一个字节的某一位的值的方法