//=======================================================// 从start开始  截取中英混合字符  遵循GBK编码规则////=======================================================std::string substr(const char * data, int start, int length){std::string temp = data;std::string res;//=======================================================// 从start开始  截取中英混合字符  遵循GBK编码规则////=======================================================for (int i = start; i < temp.length() && i < length; i++){//==========================================//  获取第一位在内存中的数值//==========================================unsigned short first_char = temp.at(i);//==========================================//  初始化第二位在内存中的数值//==========================================unsigned short sencond_char = 0;//==========================================//  如果第2位不越界,初始化第二位在内存中的数值//==========================================if (i + 1 != length && i + 1 != temp.length()){sencond_char = temp.at(i + 1);}//=================================================//  如果第一位的字符中包含在0xff81 至 0xffff (GBK编码)//=================================================if (first_char >= 0xff81 && first_char <= 0xffff){//  如果第二位有值if (sencond_char >= 0x40 && sencond_char <= 0xffff){res += first_char;res += sencond_char;// 向右多偏移一位i++;}// 如果第二位已越界else{break;}}//==================================================//  如果第一位不在GBK编码中//==================================================else{res += first_char;}}return res;}

C++处理 中英字混合截断乱码[中码GBK,英码ASCII]相关推荐

  1. 中英数字混合的字符串截取

    /*** 中英数字混合的字符串截取* Param: 参数说明* [in]$sourcestr string 截取字符串* [in]$cutlength int 截取长度*/public functio ...

  2. commons-math3-3.6.1-org.apache.commons.math3.analysis.function-包下的类(三)-中英对照文档及源码赏析

    commons-math3-3.6.1-org.apache.commons.math3.analysis.function-包下的类(三)-中英对照文档及源码赏析 摘要:中英对照文档.源码赏析.or ...

  3. commons-math3-3.6.1-org.apache.commons.math3.analysis.function-包下的类(二)-中英对照文档及源码赏析

    commons-math3-3.6.1-org.apache.commons.math3.analysis.function-包下的类(二)-中英对照文档及源码赏析 摘要:中英对照文档.源码赏析.or ...

  4. commons-math3-3.6.1-org.apache.commons.math3.analysis.integration-包下的类-中英对照文档及源码赏析

    commons-math3-3.6.1-org.apache.commons.math3.analysis.integration-包下的类-中英对照文档及源码赏析 摘要:中英对照文档.源码赏析.or ...

  5. commons-math3-3.6.1-org.apache.commons.math3.analysis.differentiation-包下的接口-中英对照文档及源码赏析

    commons-math3-3.6.1-org.apache.commons.math3.analysis.differentiation-包下的接口-中英对照文档及源码赏析 摘要:中英对照文档.源码 ...

  6. commons-math3-3.6.1-org.apache.commons.math3.analysis.integration.gauss-包下的类-中英对照文档及源码赏析

    commons-math3-3.6.1-org.apache.commons.math3.analysis.integration.gauss-包下的类-中英对照文档及源码赏析 摘要:中英对照文档.源 ...

  7. Mysql截取中英数混合的字符串

    在 mysql中截取字符串我们用 LEFT函数 LEFT(str,len) 返回从字符串str 开始的len 最左字符. mysql> SELECT LEFT('foobarbar', 5); ...

  8. 中英混串转拼音 源码

    /* 本程序只对GB2312编码有效 *//* 汉字读音分界点处的码值数组 */ static const unsigned short code_pin[] = {0xb0a1,0xb0a3,0xb ...

  9. 计算机组成原理白中英作业,计算机组成原理白中英部分作业解答(第二章)

    <计算机组成原理白中英部分作业解答(第二章)>由会员分享,可在线阅读,更多相关<计算机组成原理白中英部分作业解答(第二章)(19页珍藏版)>请在人人文库网上搜索. 1.2020 ...

最新文章

  1. 主题已放宽,科研UP主们速来Bio-protocol破浪吧
  2. mac安装jmeter
  3. Ubuntu上安装nginx步骤及问题记录
  4. IOS常用正则表达式
  5. 【MM配置】Movement Type 移动类型创建
  6. C#对Microsoft.VisualBasic My对象兰台妙选
  7. Node.js实现Excel转JSON
  8. 三角函数公式【转载】
  9. c++ createtoolhelp32snapshot取进程路径_理解进程和线程
  10. 快速向表中插入大量数据Oracle中append与Nologgin的作用
  11. iOS自己定义返回button(不影响返回手势)
  12. 天若OCR v5.0 自用免配置增强版
  13. 视频抠图在线工具有哪些?推荐这3款AI智能抠图工具
  14. php 开发 oa 框架,基于ThinkPHP框架开发的全功能OA办公管理系统PHP源码
  15. python的opencv操作记录(七)——短时傅里叶变换(stft)
  16. Spring基础详解
  17. 计算机考试a bcd哪一级难,2014计算机一级考试试题:WPS及基础题
  18. python勾股数_勾股数-随心随性无为而为-51CTO博客
  19. vue 管理系统顶部tags浏览历史实现
  20. Springboot 整合 kafka 实现消息的发布和订阅

热门文章

  1. 一年中重要的节日列表_一年中最重要的节日分别是?
  2. Mobile Edge Computing —— Paper List
  3. 简单实用的Linux可视化监控工具——WGCLOUD
  4. 【STM32CubeIDE和ITM SWV实现printf调试信息的打印】
  5. 【Java高级】多线程基础
  6. 学python真好玩啊_Python真好玩:教孩子学编程最新章节_刘凤飞著_掌阅小说网
  7. 【Python 实战基础】Pandas如何输出表格数据标题名称列表
  8. 写给Java 工程师们一封信
  9. 如果流浪地球,信息科学能做什么
  10. 小白入门计算机视觉系列——ReID(一):什么是ReID?如何做ReID?ReID数据集?ReID评测指标?