java 实现字节长度或文字数量截取字符大小工具
时间: 2023-08-02 09:07:22 浏览: 90
Java常用字符串工具类 字符串智能截取(3)
5星 · 资源好评率100%
在 Java 中,可以使用 String 类的 substring 方法来实现按照字节长度或文字数量截取字符串。下面是两个示例方法:
按照字节长度截取字符串:
```java
public static String substringByByte(String str, int len) {
if (str == null) {
return null;
}
if (len <= 0) {
return "";
}
byte[] bytes = str.getBytes();
if (len >= bytes.length) {
return str;
}
return new String(bytes, 0, len);
}
```
按照文字数量截取字符串:
```java
public static String substringByChar(String str, int len) {
if (str == null) {
return null;
}
if (len <= 0) {
return "";
}
if (len >= str.length()) {
return str;
}
int count = 0;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c >= 0x4E00 && c <= 0x9FA5) { // 中文字符
count += 2;
} else {
count++;
}
if (count > len) {
break;
}
sb.append(c);
}
return sb.toString();
}
```
这两个方法分别接收一个字符串和一个截取长度作为参数,返回截取后的字符串。可以根据实际需要选择其中的一个方法使用。
阅读全文