CRichEditCtrl::StreamOut
寫出這 CRichEditCtrl 物件的內容複製到指定的輸出資料流。
long StreamOut(
int nFormat,
EDITSTREAM& es
);
參數
nFormat
指定輸出資料格式的旗標。 如需詳細資訊,請參閱「備註」一節。es
指定輸出資料流的EDITSTREAM 結構。 如需詳細資訊,請參閱「備註」一節。
傳回值
要寫入輸出資料流中的字元數。
備註
nFormat 的值必須是下列其中一項:
SF_TEXT 以指示文字。
SF_RTF 指示文字和格式。
SF_RTFNOOBJS 指示文字和格式,取代 OLE 項目加上空格。
SF_TEXTIZED 指示文字和格式化,而 OLE 項目的文字表示。
這些值中的任何一個可合併 SFF_SELECTION。 如果 SFF_SELECTION 指定, StreamOut 寫出目前選取範圍到輸出資料流。 如果未指定, StreamOut 寫出這 CRichEditCtrl 物件的整個內容。
在 EDITSTREAM 參數 es,您指定的文字來填滿緩衝區的回呼函式。 這個回呼函式,重複呼叫,直到輸出資料流已用盡。
如需詳細資訊,請參閱 EM_STREAMOUT 訊息和 EDITSTREAM 結構在 Windows SDK。
範例
// My callback procedure that writes the rich edit control contents
// to a file.
static DWORD CALLBACK
MyStreamOutCallback(DWORD dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb)
{
CFile* pFile = (CFile*) dwCookie;
pFile->Write(pbBuff, cb);
*pcb = cb;
return 0;
}
// The example code.
// The file to store the contents of the rich edit control.
CFile cFile(TEXT("My_RichEdit_OutFile.rtf"),
CFile::modeCreate|CFile::modeWrite);
EDITSTREAM es;
es.dwCookie = (DWORD) &cFile;
es.pfnCallback = MyStreamOutCallback;
m_myRichEditCtrl.StreamOut(SF_RTF, es);
需求
Header: afxcmn.h