编VC文本编辑器的问题(怎样过滤字符,大侠帮帮忙)

iknowabc 2001-02-07 03:24:00
小弟想用VC编一个阅读器(--小弟还是个菜鸟)
1。小弟的文本存在m_Content中,如果是HTML,小弟只想简单地过滤掉
"<>"中的内容,将主要的文字显示出来,但老是失败,代码大概如下所示
请大侠指点,错在哪里,怎样写出过滤“<……>”的代码(当然,如果是<BR>还要写入换行回车)
CString str=m_Content;
TCHAR sz='0';
CString newstr;
newstr.Empty( );
int strleng=str.GetLength();
int i=0;
do
{
sz=str.GetAt(i);
if(sz=='<'){
do{i++;
sz=str.GetAt(i);}
while (sz=='>');}
i++;
newstr+=sz;

}
while (i==strleng);
m_rich.SetWindowText(newstr);
2。有没有简单的方法实现GB->BIG5的转化,有没有大侠能给一个详细的
方法。(最好给出源码)
...全文
154 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mrgong 2001-02-09
  • 打赏
  • 举报
回复
这样吧,发一封email:HaiPro@263.net,在下把那篇文章打下来(可惜没扫描仪),在email你。
iknowabc 2001-02-07
  • 打赏
  • 举报
回复
软件报的网址是什么呀,我查不到乐??
iknowabc 2001-02-07
  • 打赏
  • 举报
回复
我没有找到2000年1月15日的《软件报》这篇文章,不知网上何处有,请帮帮忙。谢谢!
随风bj 2001-02-07
  • 打赏
  • 举报
回复
呵呵,我也帮别的公司写过这样的东西,我用的方法是先将所有字符读入内存,然后检查
你的代码中的do{...} while (i==strleng);有问题,修改如下:


do
{
sz=str.GetAt(i);
if(sz=='<'){
do{i++;
sz=str.GetAt(i);}
while (sz=='>'||i==strleng);}
else
newstr+=sz;
i++;
}
while (i==strleng);

111222 2001-02-07
  • 打赏
  • 举报
回复


要是超文本写成这样
<<<<<<font size=7>你就没有办法处理了吧!</font>

关注!
mrgong 2001-02-07
  • 打赏
  • 举报
回复
过滤掉HTML元素,肯定不止你那一点代码,算法再好,也要加些。
主要是考虑全面,比如:<title>xxxxxx</title>就最好作为标题,而不要过滤掉。
2000年1月15日的《软件报》有一篇文章,给出了代码,我懒得在这儿把它敲上来。
iknowabc 2001-02-07
  • 打赏
  • 举报
回复
小弟很菜,请帮帮我!

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧