本帖最后由 appleabcdefg 于 2010-02-11 16:00:38 编辑

解决方案 »

  1.   

    如果下一行(连续的几行)的strReadTemp如果都也是\开头的话,除了上面的首行的\被换成=号,都换成“\b,”这样,
    退格后一个逗号就像这样:测试一下
    \第一个测试行
    \第二个测试行
    \第三个测试行成为:
    测试一下=第一个测试行,第二个测试行,第三个测试行
      

  2.   

    真没看明白你要干什么,但是建议你把流程写成这样:
    1.增加对每行长度的判断
    2.if if ... 改成 if else if ...
    CStdioFile csf;
    CString strRet, strTmp;if (csf.Open("XXX", CFile::modeRead, NULL))
    {
    csf.SeekToBegin();
    while (csf.ReadString(strTmp))
    {
    if (strTmp.GetLength())
    {
    if (strTmp[0] == '\\')
    XXX// 根据你的要求改写strTmp
    else
    if (...)
    ...
    strRet += strTmp;
    }
    }
    csf.Close();
    }
      

  3.   

    终于看明白你要干什么了CStdioFile csf;
    CString strRet, strTmp;
    bool bFlag = false;if (csf.Open("XXX", CFile::modeRead, NULL))
    {
    strRet.Empty();
    csf.SeekToBegin();
    while (csf.ReadString(strTmp))
    {
    if (strTmp.GetLength())
    {
    if (strTmp[0] == '\\')
    {
    strTmp.Delete(0);
    if (bFlag)
    strTmp.Insert(0, ',');
    else
    {
    bFlag = true;
    strTmp.Insert(0, '=');
    }
    }
    else
    if (...)
    {
    bFlag = false;
    ...;
    }
    ...;
    strRet += strTmp;
    }
    }
    csf.Close();
    }