我的开发中需要移植一部分VC的程序到到Windows Mobile中。
因此碰到了CArchive的问题。
首先要说的是MFC 的CArchive在WM5中是可以使用的,而且没有任何问题。
问题在于它没有按照通常的假设来执行。因为根本原因在于Windows Mobile与PC对于文本,字符串使用的区别。
因为这个类是一个对文本的操作类。移植到Windows mobile设备中会默认以Unicode,宽字节去读取文件。
(定义了Unicode)Windows Mobile对字符串的处理区分得非常清晰。对于MFC来说 就有两个不同的类存在CString 和 CStringA
可以用CFile->Read来解决CArchive的问题,然后存为CStringA 最后可以用WINAPI MultiByteToWideChar来转换解决以上问题。
Joker.Xu