|
Web应用程序在浏览器中显示字符串时,由于显示长度的限制,常常需要将字符串截取后再进行显示。 String s = "a加b等于c,如果a等1、b等于2,那么c等3";
|
|
产生这个问题的原因是将substring方法将双字节的汉字当成一个字节的字符(UCS2字符)处理了。要解决这个问题的方法是首先得到该字符串的UCS2编码的字节数组,如下面的代码如下: byte[] bytes = s.getBytes("Unicode");
public static String bSubstring(String s, int length) throws Exception
String s = "a加b等于c,如果a等1、b等于2,那么c等3";
|

本文探讨了Web应用程序中使用Unicode16(UCS2)编码时,如何正确截取包含中英文、数字混合的字符串,避免因编码问题导致的截取错误。通过实现一个自定义方法`bSubstring`,确保正确处理不同字符类型的字节数,从而准确截取所需部分。
4305

被折叠的 条评论
为什么被折叠?



