明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5237|回复: 10

[ARX]如何提取多行文字有效字符?

[复制链接]
发表于 2004-8-13 10:48:00 | 显示全部楼层 |阅读模式
假如有一多行文字,其内容为: {\fNSimSun|b0|i0|c134|p49;\c0;明\fSimSun|b0|i0|c134|p2;\C3;经\C6;通\C4;道\fFangSong
  _GB2312|b0|i0|c134|p49;} 如何用C++提取到其有效字符“明经通道”呢?
发表于 2004-8-26 09:36:00 | 显示全部楼层
contents()函数不行吗?
 楼主| 发表于 2004-8-27 08:10:00 | 显示全部楼层
哈哈,{\fNSimSun|b0|i0|c134|p49;\c0;明\fSimSun|b0|i0|c134|p2;\C3;经\C6;通\C4;道\fFangSong_GB2312|b0|i0|c134|p49;}


这个内容就是从contents()里得到的
发表于 2004-8-28 17:39:00 | 显示全部楼层
使用Explode()函数,得到系列AcDbText对象,再次调用AcDbText::TextString()即可得到你想要的内容!
发表于 2004-8-30 08:18:00 | 显示全部楼层
gxss发表于2004-8-28 17:39:00使用Explode()函数,得到系列AcDbText对象,再次调用AcDbText::TextString()即可得到你想要的内容!

不错,我没想到
 楼主| 发表于 2004-9-4 08:53:00 | 显示全部楼层
thank you
发表于 2006-12-18 11:58:00 | 显示全部楼层

这样可以不用炸开多文本,提取出纯文本

CString  str;
 str.Format("%s",pmtext->contents());
int pot=str.Find(';');
 int pot2=str.Find('}'); 
  int num=pot2-pot-1;
  str=str.Mid(pot+1,num);
  char *a=(LPTSTR)(LPCTSTR)str;
  

发表于 2021-11-14 15:02:20 | 显示全部楼层
bgl_820601 发表于 2006-12-18 11:58
这样可以不用炸开多文本,提取出纯文本CString  str; str.Format("%s",pmtext->contents());in ...

你好你的代码如何运行
发表于 2021-11-30 13:36:36 | 显示全部楼层
gxss 发表于 2004-8-28 17:39
使用Explode()函数,得到系列AcDbText对象,再次调用AcDbText::TextString()即可得到你想要的内容!

炸开的话,如果原始多行文字 真的是多行,那就炸成多个 单行文本了
发表于 2022-3-1 22:05:03 | 显示全部楼层
你好,问下,如何获取多行文字所有字符?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 05:22 , Processed in 0.143820 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表