java和c通信的时候,由于c中的char中有结束符\0的,但是java中没有结束符这一说,

直接看代码

/**
     * 截取掉C中\0之前的字符串。即只截取\0前的字符
     *
     * @param s
     * @return
     */
    public static String interceptChar0Before(String s){
        if(s == null){
            return null;
        }
        char[] chars = s.toCharArray();
        StringBuffer sb = new StringBuffer();
        for(char c : chars){
            Character ch = c;
            if(0 == ch.hashCode()){ //如果到了字符串结束,则跳出循环
                break;
            }else{
                sb.append(c);
            }
        }
        return sb.toString();
    }


本文转载:CSDN博客