小程序(将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) ;
        }
}

原文地址:https://www.cnblogs.com/honglihua8688/p/3135762.html