小程序(将Solaris下的换行符转化为windows下的换行符)

前提知识点:

换行符的ASCII码是十进制的10.
回车符的ASCII码是十进制的13.
Windows换行符是回车符与换行符共同组成的,也就是13+10. 即:0x0D0A
Unix/Linux等系统的换行符就只是10 即:0x0A

下面就是数据中传递,将Solaris下的换行符“0x0A”转化为windows下的换行符"0x0D0A"

//strFrom:变换前的数据

//strTo:变换后的数据

void ConvertNL(CString& strFrom, CString& strTo) 

{
   strTo = "";
    /*----------------------------------------------------------------------*/
    /* 处理开始                                                            */
    /*----------------------------------------------------------------------*/
    for(int i = 0 ; i < strFrom.GetLength() ; i++)
        {
        if(strFrom.GetAt(i) == '\n' &&  /* 为0x0A                       */
           i != 0 &&                    /* 不是开始文件                   */
           strFrom.GetAt(i-1) != '\r')              {
            strTo += "\r" ;
            }
        strTo += strFrom.GetAt(i) ;
        }
}

posted on 2013-06-14 16:08  honglihua  阅读(287)  评论(0编辑  收藏  举报

导航