最近遇到一个在Java中按照字节数截取字符串的问题,由于中文跟英文单个字符长度不同故很容易出现问题。就这个问题,我也在网上搜过,但是发现网上的代码好多都存在问题:具体问题在这里由于时间的问题也就不在多说了。现在我将我自己做的并且经过测试了的代码贴到空间上面来以供参考: package test; /** * <p>Title: </p> 海虹做法* * <p>Description: </p> * * <p>Copyright: Copyright (c) 2008</p> * * <p>Company: </p> * * @author not attributable * @version 1.0 */ public class SplitString { /** * * @param str String 被截字符串 * @param bytes int 被截字符数 * @return String 返回字符串 */ public static String SplitString(String str, int bytes) { int count = 0; //统计字节数 String reStr = ""; //返回字符串 if (str == null) { return ""; } char[] tempChar = CharArray(); for (int i = 0; i < tempChar.length; i++) { String s1 = str.valueOf(tempChar[i]);头像图片 byte[] b = s1.getBytes(); count += b.length; if (count <= bytes) { reStr += tempChar[i]; }毛入学率 } return reStr; } public static void main(String[] args) { 茶树菇炒五花肉String str = "安神补脑液的作用我ABC汉DDFGH"; String s = SplitString(str, 6); System.out.println(s); //注:输出结果即为:我ABC 因为要截6个字符而一个中午占2个字符,但是一个汉字又不可能分成两半故输出结果会为:我ABC 万里成语 如果截取的字符数为7的话那么结果就会是:我ABC汉 了! }校本课 |
本文发布于:2023-07-21 15:06:42,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/82/1109145.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |