为什么从XML文件中读取的/n或者 /r/n不能在MessageBox中换行

                                为什么从XML文件中读取的/n或者 /r/n不能在MessageBox中换行

      在一个xml文件中,有一段字符串,其中包含一些/r/n字符串,但是发现最终在读取之后,发现在MessageBox中根本不能显示出来,后面发现原因如下:

 

       XML文件中的"/n",会被认为是一个字符串"///n"是两个字符'//'和'/n',而不是转义字符"/n",

      这个时候,显然就肯定不是换行符了。

 

      这个时候,需要自己在程序中写一个函数,将 "///n"转化为  "/n"

 

 

       转化的代码如下:

       void string_replace( std::string &strBig, const std::string &strsrc, const std::string &strdst ) { std::string::size_type pos = 0; std::string::size_type srclen = strsrc.size(); std::string::size_type dstlen = strdst.size(); while( (pos=strBig.find(strsrc, pos)) != std::string::npos ) { strBig.replace( pos, srclen, strdst ); pos += dstlen; } }

 

      

     

 

     

你可能感兴趣的:(xml,String)