我要获取字符串的前10个字符,如果是中文那么就应该是5个中文字符,但我用substring方法得到的却是10个中文字符,请问大侠,我该怎样获取另外,String的length方法 若10个中文字符返回的也是10,二不是20,我该怎样到它的实际长度20
public static void main(String[] args)throws Exception{
    String str="遵守中华人民共和国有关法律";
    str = str.substring(0,4);
    System.out.println(str);
}