字符串截取-大神们,,求指导,,,,

问题描述

大神们,,求指导,,,,

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

解决方案

public static String subString(String strSrc, int size) {
String subString = "";
int subStrLen = 0;
int subStrSize = 0;
if (size > strSrc.getBytes().length) {
return "";
}
for (int i = 0; i < strSrc.length(); i++) {
if (strSrc.substring(i, i + 1).getBytes().length == 1) {
subStrSize += 1;
} else if (strSrc.substring(i, i + 1).getBytes().length == 2) {
subStrSize += 2;
}
subStrLen += 1;
if (subStrSize == size) {
break;
} else if (subStrSize > size) {
subStrLen = subStrLen - 1;
break;
}
}
subString = strSrc.substring(0, subStrLen);
return subString;
}

时间: 2024-08-03 17:37:42

字符串截取-大神们,,求指导,,,,的相关文章

c语言-菜鸟问问错在哪儿。大神们求指导

问题描述 菜鸟问问错在哪儿.大神们求指导 #include int main() { int n,a,b,c; printf("input the length of the ribbon and the sceondcut pieces a b c"); scanf("%d%d%d%d",&n,&a,&b,&c); int min,ex,max; if(a>=b) min=b; else min=a; if(min>=c

qt-在linux系统下如何获取窗口的指针(多个进程的窗口),希望大神给点指导,谢谢

问题描述 在linux系统下如何获取窗口的指针(多个进程的窗口),希望大神给点指导,谢谢 本人用在linux下用Qt去获取,之前在Widows下通过WINDOWS API函数获取到了多个进程的句柄.现在项目要在linux系统下进行,求大神们指导下,谢谢 解决方案 XLib 最底层的库,只是看了下文档,不知有没有QT高手分享下使用经验

心好累,大神们求解答,javaweb问题,纠结好久了!!

问题描述 心好累,大神们求解答,javaweb问题,纠结好久了!! 最近自学了javaweb的一些内容,然后跟着教程写了一些东西,不过就是好纳闷,跟着做,而且一模一样,教程中可以运行,我一运行就挂了,求大神指教. 急求!!!!在此,先谢谢!!! 解决方案 数据库链接配置错了吧 解决方案二: 出错的地方很明白的给你指出来了啊,162行,自己看看那是在干嘛,建立数据库连接? 这种错无非就是配置字符串有问题,程序没找到驱动, 解决方案三: 链接数据库的时候配置写错了,驱动配置的有点问题. 解决方案四:

c++-学C++的大二学生求指导

问题描述 学C++的大二学生求指导 现在应该往哪方面拓展啊,我成绩一般般,感觉没学到什么,连一些简单的小应用都不会做 解决方案 同大二路过,自己喜欢学什么旧学咯,兴趣 解决方案二: 熟悉了c++的语法之后,可以开始学MFC了,推荐孙鑫的<VC++深入详解>,刚开始入门会比较难,但是学好这个很有用. 解决方案三: 先学基础,写写小算法,解解基本的练习题,然后写些类,接口,继承等.然后写些应用程序.可以边学这个边学LINUX以后找工作会很有用.都是这么一步步过来的,别急慢慢来,积累的多了就好了.

java数据权限设计-各位大神,求数据权限设计思路

问题描述 各位大神,求数据权限设计思路 求J2ee数据权限的设计思路,基本要求: 部门经理可以查看该部门下的所有数据对象(比如销售订单),销售人员只可以查看自己的销售订单或者查看其他人的销售订单(通过权限设置),请问该怎么设计?求高人帮忙. 解决方案 你可以做一个菜单权限.专门写一个菜单生成模块. 1.前端:用一个js框架例如:ztree,是一个很好用的菜单框架.它有成熟的API,自定义自己的菜单. 2.数据库:简单的可以设计三个表:用户表,角色表,菜单表.三个表分别为多对多关系.利用用户所拥有

基于s/c的数据库查询系统的设计 ,毕业论文的题目 ,理不清思路。麻烦各位大神给个指导

问题描述 基于s/c的数据库查询系统的设计 ,毕业论文的题目 ,理不清思路.麻烦各位大神给个指导 建立一个数据库,并查询,这个好办.但是一加前面的条件就不太明白了.s/c也大致了解,但是这两个要怎么联系到一起呢.好晕啊.我是急着写论文,这些知识只学了皮毛,问题描述如果那里说错了还请担待.我只求一个大体的思路.帮帮忙吧,各路大神们. 解决方案 其实也就是让一个程序是客户端,里面跑着TCP客户端的程序,然后通过TCP连接到你的一个TCP的服务器 这些TCP的程序在网上很多,如果就是想做个毕设可以直接

各位大神,求问一个leetcode的问题

问题描述 各位大神,求问一个leetcode的问题 我编写leetcode的第89题gray code, 发现我自己电脑编译出的结果和网页的编译结果不同,甚是蛋疼!原码如下:class Solution {public: vector grayCode(int n) { if (n ==0 ){ vector outcomes; outcomes.push_back(0); return outcomes; } else if (n == 1) { vector outcome; outcome

ios-各路大神,求接触禁锢

问题描述 各路大神,求接触禁锢 ![图片说明](http://img.ask.csdn.net/upload/201605/14/1463205593_33623.png) 图中error为domain nil,并非nil,这导致!error为假,直接跳出if判断. 在循环中,只有第一次,error返回的是domain nil,其余几次返回的都是nil.这是什么原因呢,怎样才能使第一次的error返回的也是nil,而不是domain nil呢 解决方案 很有可能domain nil 为非空值,使

mfc-MFC窗口分割问题,望大神予以小弟指导,感激涕零

问题描述 MFC窗口分割问题,望大神予以小弟指导,感激涕零 参照MFC分割窗的事例进行了窗口分割的工作,但是遇到了只能对第二个窗口进行分割的问题,分割结果如图1,,但现在想实现第一行为一整行,第二行分为两列.本人初步接触MFC,希望知情人予以解答,在此感激不尽. 分割代码如下: if (m_splitter.CreateStatic(this, 2, 1) == NULL) return FALSE; m_splitter.CreateView(0, 0, RUNTIME_CLASS(CSpli