void CMainFrame::CreateChatRecord()
{
CTreeCtrl* pTree = (CTreeCtrl*)GetDlgItem(IDC_TREECTRL);
HTREEITEM hItem=pTree->GetSelectedItem();
if (hItem == NULL)
return;
CString strText = pTree->GetItemText(hItem);
CString FileName=strText+_T(".txt");
m_pFile = new CFile((LPCTSTR)FileName,CFile::modeCreate | CFile::modeWrite);
}
以上是我获得树控家子节点里显示的名字,并以这个名字为名建立的txt文件,我现在有个聊天对话框,如何将我发送框里的文本写到我已经建立的这个txt文本内?不要覆盖的写入,要接着以前的内容往下写的那种,我不知道怎么去获取这个已经建立的txt文件名,而且我只会覆盖写入,不知道如何实现不覆盖往里写??哪位大虾帮帮忙?
{
CTreeCtrl* pTree = (CTreeCtrl*)GetDlgItem(IDC_TREECTRL);
HTREEITEM hItem=pTree->GetSelectedItem();
if (hItem == NULL)
return;
CString strText = pTree->GetItemText(hItem);
CString FileName=strText+_T(".txt");
m_pFile = new CFile((LPCTSTR)FileName,CFile::modeCreate | CFile::modeWrite);
}
以上是我获得树控家子节点里显示的名字,并以这个名字为名建立的txt文件,我现在有个聊天对话框,如何将我发送框里的文本写到我已经建立的这个txt文本内?不要覆盖的写入,要接着以前的内容往下写的那种,我不知道怎么去获取这个已经建立的txt文件名,而且我只会覆盖写入,不知道如何实现不覆盖往里写??哪位大虾帮帮忙?
m_pFile->SeekToEnd();
{
if (NULL == lpszFile || '\0' == *lpszFile || NULL == lpszText)
return FALSE;
//打开文件。
CFile save;
if (save.Open(lpszFile, CFile::modeCreate | (bForAppending ? CFile::modeNoTruncate : 0) | CFile::modeWrite))
{
if (bForAppending)
{
save.SeekToEnd();
}
save.Write(lpszText, _tcslen(lpszText));
save.Close(); return TRUE;
}
return FALSE;
}
CFile file(_T("record.txt"),CFile::modeWrite|CFile::modeCreate);
CString Str;
GetDlgItemText(IDC_EDIT_RECV,Str);
file.Write(Str,Str.GetLength());
file.Close();
PlaySound("msg.wav",NULL,SND_FILENAME | SND_ASYNC);
而且树控件和我这个写文件的代码不在同一个类里面的,写文件我新建了一个类了