字符串截取:
有这么一串字符串,“我abc爱ce你ef”要求你写一段程序,当输入4的时候得到的子串是“我ab”
当输入6的时候得到的子串为“我abc爱”不能出现“爱”字为半边。
/**
* 截取字符串,最后如果是半个中文,补上剩下的半个
* <功能详细描述>
* @param str 原始的字符串
* @param size 需要截取的长度
* @return 截取后的字符串
* @see [类、类#方法、类#成员]
*/
public static String subStringMore(String str, int size)
{
byte[] bb = null;
StringBuilder sb = new StringBuilder();
String temp = "";
int count = 0;
for (int j = 0; j < str.length(); j++)
{
temp = str.substring(j, j + 1);
sb.append(temp);
count += temp.getBytes().length;
if (count >= size)
{
break;
}
}
return sb.toString();
}
/**
* 截取字符串,最后如果是半个中文,舍掉最后的半个
* <功能详细描述>
* @param str 原始的字符串
* @param size 需要截取的长度
* @return 截取后的字符串
* @see [类、类#方法、类#成员]
*/
public static String subStringLess(String str, int size)
{
byte[] bb = null;
StringBuilder sb = new StringBuilder();
String temp = "";
int count = 0;
int nextLength = 0;
for (int j = 0; j < str.length(); j++)
{
temp = str.substring(j, j + 1);
sb.append(temp);
count += temp.getBytes().length;
if (count >= size)
{
break;
}
}
if (count > size)
{
return sb.substring(0, sb.length() - 1);
}
else
{
return sb.toString();
}
}
分享到:
相关推荐
C# 按照字节长度截取字符串,可以截取任意字节长度得字符串,使用了一点正则表达式。
字符串按照指定的字节数来截取
关于java按字节截取带有汉字的字符串的解法.不错的一个程序。我也是从高手那拿来的,觉得不错,传上来给感兴趣的朋友学习学习。
字符串截取,按字节截取字符串,截取字符串帮助类
截取含有中英文的字符串,按字节进行截取,当出现汉字时不能截取半个汉字要把汉字补全。
实现一个按字节来截取字符串的方法,功能类似于string类的substring方法,String类是按字符截取 的,例如"中国abc".substring(1,3),将返回“国a”。这里 要求按字节截取,一个英文字符当一个字节,一个中文字符当两...
按字节长度截取字符串(支持截取带HTML代码样式的字符串) ,补全不完整的HTML代码
最近需要用到按字节数截取字符串。在网上找了很多方法。 Encoding.Default.GetString采用的Default Encoding.UTF8.GetBytes采用的是utf-8编码。这样当然是乱码。尤其出现中文时候。 对这类数据处理当然要用统一的...
asp.net c# String类添加按字节截取字符串的扩展方法
下面小编就为大家带来一篇java按字节截取带有汉字的字符串的解法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
可以截取中英文字符串,也可以含有字符,里面有好几个方法 有按字符个数截取 有按字节数来截取不会存在乱码
C#字符串截取固定长度的方法
主要介绍了JAVA如何按字节截取字符串,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
NULL 博文链接:https://tim-fly.iteye.com/blog/1313915
用SQL语句截取字符串, string substr ( string string, int start [, int length]) 参数1:处理字符串 参数2:截取的起始位置(第一个字符是从0开始) 参数3:截取的字符数量
本文实例讲述了Go语言按字节截取字符串的方法。分享给大家供大家参考。具体实现方法如下: 代码如下:// 按字节截取字符串 utf-8不乱码 func SubstrByByte(str string, length int) string { bs := []byte(str)[:...
1、 当字符串全部为单字节字符时,则可以用SubString方法截取指定长度即可。 2、 当字符串全部为双字节字符时,则只需要用SubString方法截取指定长度的一半 3、 当字符串为单字节双字节混合时,则我们可以用折中这样...
java编写一个截取字符串的函数,输入为一个字符串和字节数
根据指定字节数截取字符串,当指定处为中文第一个字节时少截取一个字符,当长度大于指定截取长度时,截取后在字符串末尾追加指定字符串 * 这里添加了字符串的编码,因为页面的编码不同,字符串所占字节
对全角半角字符串的处理,对全角半角字符串的处理,对全角半角字符串的处理