http://www.cnblogs.com/kongtiao/archive/2012/06/13/2548033.html

  在MFC程序中,使用CString来处理字符串是一个很不错的选择。CString既可以处理Unicode标准的字符串,也可以处理ANSI标准的字符串。CString的Format方法给我们进行字符串的转换带来了很大的方便,比如常见的int、float和double这些数字类型转换为CString字符串只需一行代码就可以实现。

  先看看Format用于转换的格式字符:

  %c                 单个字符

  %d                 十进制整数(int)

  %ld                十进制整数(long)

  %f                 十进制浮点数(float)

  %lf                十进制浮点数(double)

  %o                 八进制数

  %s                 字符串

  %u                 无符号十进制数

  %x                 十六进制数

  1、int转换为CString:

  CString str;

  int number=15;

  //str="15"

  str.Format(_T("%d"),number);

  //str=" 15"(前面有两个空格;4表示将占用4位,如果数字超过4位将输出所有数字,不会截断)

  str.Format(_T("%4d"),number);

  //str="0015"(.4表示将占用4位,如果数字超过4位将输出所有数字,不会截断)

  str.Format(_T("%.4d"),number);

  long转换为CString的方法与上面相似,只需要把%d改为%ld就可以了。

  2、double转换为CString:

  CString str;

  double num=1.46;

  //str="1.46"

  str.Format(_T("%lf"),num);

  //str="1.5"(.1表示小数点后留1位,小数点后超过1位则四舍五入)

  str.Format(_T("%.1lf"),num);

  //str="1.4600"

  str.Format(_T("%.4f"),num);

  //str=" 1.4600"(前面有1个空格)

  str.Format(_T("%7.4f"),num);

  float转换为CString的方法也同上面相似,将lf%改为f%就可以了。

  3、将十进制数转换为八进制:

  CString str;

  int num=255;

  //str="377"

  str.Format(_T("%o"),num);

  //str="00000377"

  str.Format(_T("%.8o"),num);

  Format是一个很常用,却又似乎很烦的方法,以下是它的完整概貌,以供大家查询之用:

  格式化字符串forma("%d",12)意思是将一个整形的格式化的字符(我认为是保持其形状不变) 
   格式说明总是以%字符开始,以下是不同类型数据的格式方式%号后的说明: 
    d输出带符号十进制数 
    o输出无符号八进制数 
    x输出无符号十六进制数 
    u输出无符号数 
    c输出单个字符 
    s输出一串字符 
    f输出实数(6位小数) 
    e以指数形式输出实数 
    g选用f与e格式中输出宽度较小的格式,不输出0 
    ld输入输出long型数据 
    lf输入输出double型数据 
    m数据输出宽度为m 
    .n输出小数位数为n

MFC中CString.Format的详细用法 - wangkaishou的专栏 - CSDN博客http://blog.csdn.net/wangkaishou/article/details/5846152


MFC中CString.Format的用法的更多相关文章

  1. MFC中CString.Format的详细用法

          本文转载自:http://blog.csdn.net/wangkaishou/article/details/5846152,感谢网友 Technorati 标签: CString For ...

  2. MFC中CString.Format类详解

    在MFC程序中,使用CString来处理字符串是一个很不错的选择.CString既可以处理Unicode标准的字符串,也可以处理ANSI标准的字符串.CString的Format方法给我们进行字符串的 ...

  3. 简析MFC中CString用作C字符串

      MFC中CString是一个方便的字符串操作的类, 然而很多函数需要传递字符指针, 这就需要进行CString和普通字符串的转换. 1.CString用作C字符串常量. 直接使用强制类型转换即可, ...

  4. 关于在mfc中cstring转为float和ini

    CString str1,str, str2; GetDlgItemText(IDC_EDIT1, str1); GetDlgItemText(IDC_EDIT2, str2); UINT value ...

  5. MFC中cstring,string和char[]的相互转化

    int 转 CString:CString.Format("%d",int);...............................string 转 CString CSt ...

  6. MFC中CString转换成char数组的问题

    由于结构体中用到联合体(联合体需要确定分配内存分配大小)或其它因素,需要用char数组来保存字符串,但是在MFC中一般都是用CString来存放字条串.关于它们之间的转换,在VS2008中有时会出现异 ...

  7. 实战c++中的string系列--std::string与MFC中CString的转换

    搞过MFC的人都知道cstring,给我们提供了非常多便利的方法. CString 是一种非常实用的数据类型. 它们非常大程度上简化了MFC中的很多操作,使得MFC在做字符串操作的时候方便了非常多.无 ...

  8. MFC中ComboBox控件用法

    MFC ComboBox 一.入门篇 ComboBox (组合框)控件很简单,可以节省空间.从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的.用户可以从一个预先定义的列表里选择一个选项 ...

  9. MFC中List box的用法

    首先在头文件中创建对象,CSGrid m_proViewList;//创建表头#pragma region 建立grid表的标题 m_proViewList.AppendColumn(_T(" ...

随机推荐

  1. HDU4920 Matrix multiplication 矩阵

    不要问窝 为什么过了> < 窝也不造为什么就过了 说是%3变成稀疏矩阵 可是随便YY个案例都会超时.. . 看来数据是随机的诶 #include <stdio.h> #incl ...

  2. jq的form验证

    jQuery(document).ready(function(){ $('#cform img.contact-loader').hide(); $('#cform').submit(functio ...

  3. ADB 高级应用

    一.利用无线来查看adb shell > adb tcpip 5555   连接: > adb connect IP:5555   见后文<调试注意事项>   二.模拟按键   ...

  4. 转 理解与分析ios应用的崩溃报告

    理解与分析ios应用的崩溃报告 源网址: http://developer.apple.com/library/ios/#technotes/tn2151/_index.html 当一个应用程序崩溃时 ...

  5. mongodb - 查看集合的状态

    #查看集合postalCodes的状态信息 > db.postalCodes.stats(1024) #1024表示显示的单位是KB.默认是bytes { "ns" : &q ...

  6. SharePoint专家新闻轮转器WebPart----亲測力推之Web部件

    SharePoint专家新闻轮转器WebPart----亲測力推之Web部件 项目截图: 注意: 专家新闻轮转器还在測试阶段.期待大家讨论和跟踪问题. 项目描写叙述: 专家新闻轮转器是一个ShareP ...

  7. 以登录实例简单介绍Servlet使用

    1.简单介绍 Java Servlet 是执行在 Web server或应用server上的程序,使用 Servlet.您能够收集来自网页表单的用户输入.呈现来自数据库或者其它源的记录.还能够动态创建 ...

  8. 自己定义进度条PictureProgressBar——从开发到开源公布全过程

    自己定义进度条PictureProgressBar--从开发到开源公布全过程 出处: 炎之铠邮箱:yanzhikai_yjk@qq.com 本文原创.转载请注明本出处! 本项目JCenter地址:ht ...

  9. 二次开发第N天。。。。。。。。自动分页问题

    phpcms\modules\content\fields\pages\form.inc.php 注意修改时,如果是gbk版本可以直接用记事本修改保存!如果是utf8 要用工具修改,或者保存的时候要记 ...

  10. 动态添加定时任务-quartz定时器

    Quartz动态添加.修改和删除定时任务 在项目中有一个需求,需要灵活配置调度任务时间,刚开始用的Java自带的java.util.Timer类,通过调度一个java.util.TimerTask任务 ...