去年写过一个博客介绍了自己写的一个读写Unicode编码文件的方法,这个方法不使用系统提供的类库,使用标准C++的方法,因此很很好的可移植性。
上次写的没经过大规模的测试,这几天对这个方法进行了修改:
1支持Windows和Linux的换行符
2修改了部分代码,使之更加健壮
代码如下:
/*
*************************************************
功能 : 按照行读取UTF16编码的文件,读取后去掉换行符
参数 :
返回值 :
-------------------------------------------------
备注 : 可以处理windows和linux格式的换行符
-------------------------------------------------
作者 :Li Yachao
时间 :2013-2-26
*************************************************
*/
bool FileIO::UTF16FileRead(const std::string& path, std::vector<std::wstring> &vec_lines)
{
/*****************打开文件***********************************************/
vec_lines.clear();
std::ifstream fin;
fin.open(path.c_str(),std::ios::in | std::ios::binary);
if (!fin.is_open())
{
std::cerr << "Open " << path << " error!" << std::endl;
return false;
}
char

本文介绍了作者对之前Unicode(UTF16)文件读写方法的改进,增强了其在Windows和Linux平台上的换行符支持,并优化了代码的健壮性,以实现更好的可移植性。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



