将字符串按照指定的长度截取,返回多个子字符串

版权声明:本文为博主原创文章,未经博主允许不得转载。https://blog.csdn.net/qq_33651286/article/details/82762194

 /**
     * @param str 原始字符串
     * @param len 被截取子字符串
     * @return String[]
     */
    public static String[] hexStrToByteStr(String str,int len){
    	while((str.length()%len) != 0){//将字符串等分,如果位数不够,在左边补0。(这个地方大家可以根据自己的需要进行修改)
    		str="0"+str;
    	}
    	
    	//将字符等分,得到相应的份数
    	String[] subs= new String[str.length()/len];
    	int start = 0;
    	int spiltNum = len;//这个是为了转存每个子字符串的长度
    	for(int i=0;i<subs.length;i++){
    		subs[i] = str.substring(start, len);
    		start = len;
    		len+=spiltNum;
    	}
    	for(int j=0;j<subs.length;j++){
    		System.out.println(subs[j]);
    	}
    	return subs;
    }
    
    public static void main(String[] args) {
    	hexStrToByte("1234567",4);
    }

上边的代码运行之后:
0123
4567

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 如果你要截取两个字符串之间的串,可以先找到这两个字符串的位置,然后再用 Mid 函数截取它们之间的串,例如: ```c++ CString str = "Hello <world>!"; int pos1 = str.Find('<'); int pos2 = str.Find('>'); CString substr = str.Mid(pos1 + 1, pos2 - pos1 - 1); // 截取 "world" ``` 这里用了 Find 函数来查找字符在字符串中的位置,然后用 Mid 函数截取它们之间的串。注意截取的起始位置和长度的计算。如果你要截取串包括两个分隔符之间的内容,那么需要根据具体情况调整起始位置和长度的计算。 ### 回答2: 在CString中,可以使用Mid函数来截取两个字符串之间的字符串。Mid函数的用法如下: CString Mid( int nFirst, int nCount ) const; 其中,nFirst表示需要截取的起始位置,nCount表示需要截取的字符数。 假设有一个字符串str,我们想要截取其中的两个字符串之间的字符串,可以先通过Find函数找到两个字符串分别在str中的位置,然后再根据它们的位置和长度来调用Mid函数进行截取。 具体代码如下: CString str = "abcdefg"; CString str1 = "bc"; CString str2 = "ef"; int start = str.Find(str1) + str1.GetLength(); int end = str.Find(str2); CString result = str.Mid(start, end - start); 在上述代码中,我们首先将字符串str定义为"abcdefg",然后定义了两个字符串str1和str2,分别为"bc"和"ef"。然后通过Find函数获得了str1和str2在str中的位置,并将其分别存储在start和end变量中。最后通过调用Mid函数,将起始位置start和截取的字符数(即end - start)作为参数,截取出了两个字符串之间的字符串,并将结果存储在result变量中。 通过上述方式,我们可以在CString中实现截取两个字符串之间的字符串的功能。 ### 回答3: 在CString类中,可以使用Mid函数来截取两个字符串之间的字符串。 Mid函数有多个重载的版本,可以根据不同的需求来选择使用。其中最常用的版本是截取指定位置开始的一定长度字符串。 要截取两个字符串之间的字符串,首先需要先确定两个字符串在源字符串中的位置。假设源字符串为str,要截取的两个字符串为str1和str2。可以先使用Find函数来找到str1和str2在字符串str中的索引位置: int index1 = str.Find(str1); //找到str1的索引位置 int index2 = str.Find(str2); //找到str2的索引位置 接下来,可以使用Mid函数来截取两个字符串之间的字符串: CString subStr = str.Mid(index1 + str1.GetLength(), index2 - index1 - str1.GetLength()); 其中,index1 + str1.GetLength()表示从str1的末尾位置开始截取,index2 - index1 - str1.GetLength()表示要截取字符串长度。 最后,将截取到的字符串保存到CString类型的subStr变量中。subStr就是两个字符串之间的字符串。 需要注意的是,如果str1或str2不存在于str中,那么Find函数会返回-1,表示未找到相应的字符串。此时需要对找不到字符串的情况进行处理,避免出现错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值