CArchive::WriteString 处理 Unicode 字符串数据



来源:CArchive::WriteString 处理 Unicode 字符串数据

如果希望你的程序一边处理数据一边把数据写文件里,那可以考虑使用 CArchive,JX8NET 这里简单的写一段代码:
CArchive:: << CString 会先写入字符串的长度,再写入字符串。
如果是Unicode字符串,写每个CString 之前都会先写入编码"FF FE”,再写入字符串长度值,最后写入字符串。
写入的字符串长度值是经过编码后的值,添加了一些冗余,目的是为了自解释性。
因此,如果用<<把CSting写入了文件,读取时也必须用>>才能正确地把它读出来。

CArchive::WriteString(LPCTSTR) 用来写一行文本,因此写完纯文本后需要写入一个\n。
CArchive::ReadString(LPCTSTR) 和WriteString配对,用来读一行文本,读取的时候字符\n会丢掉。

你可能感兴趣的:(数据,unicode,编码,mfc)