zoukankan      html  css  js  c++  java
  • 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。

    package my0414;
    
    import java.io.UnsupportedEncodingException;
    
    public class StringText {
    
    	/**
    	 * @param args
    	 * @throws UnsupportedEncodingException 
    	 */
    	public static void main(String[] args) throws UnsupportedEncodingException {
    		
    		String str="k%11!*好aa!、小一ki大0家好";
    		int m=trimGBK(str.getBytes(),8);
    		System.out.println(str.substring(0, m));
    		
    		System.out.println(mysubString(str,8));
    	}
    	 public static int  trimGBK(byte[] buf,int n){
    		 boolean chinese=false;
    		 int num=0;
    		 for(int i=0;i<n;i++){
    			 System.out.println(buf[i]);
    			 if(buf[i]<0&&!chinese){
    				 chinese=true;
    			 }else{
    				 num++;
    				 chinese=false;
    			 }
    		 }
    		 return num;
    	 }
    	 public static String mysubString(String str,int sublen){
    		 String subStr=str.substring(0,sublen);
    		 int tempSublen=sublen;
    		 int subStrlen=subStr.getBytes().length;
    		 while(subStrlen>sublen){
    			 
    			 tempSublen--;
    			 subStrlen=str.substring(0,tempSublen).getBytes().length;
    		
    		 }
    		 return str.substring(0,tempSublen);
    		 
    	 }
    }
    

      

  • 相关阅读:
    算法总结7—多维缩放
    算法总结3—神经网络
    算法总结9—优化
    算法总结8—非负矩阵因式分解
    R语言系列—区间估计
    算法总结2—决策树分类器
    算法总结5&6k最近邻与聚类
    统计,逻辑与智能
    算法总结4—支持向量机
    R语言系列—回归分析
  • 原文地址:https://www.cnblogs.com/qiaomu/p/4425934.html
Copyright © 2011-2022 走看看