修改原来的Source Insight完美转换UTF-8 到 GB2312

使用原作者的source insight 转换CodeConvert.exe:http://blog.csdn.net/flylonginsky/article/details/4670188

1.点击运行时报错了:找不懂xx.dll,

用vs打开编译时是不能编译过的,报错:“MultiByteToWideChar”: 不能将参数 5 从“unsigned short [2048]”转换为“LPWSTR”等类型转换出错,在原来的基础上添加强制转换就ok了;

2.选择使用转换单个文件:%d时转换不了,看了下代码是函数:bool find_cpp_files(LPCTSTR DirName)中sprintf(tempFileFind,"%s\\*.*",DirName);当时文件名字时会有问题

因此可以在这之前做点判断当前输入的是文件名字还是文件夹,简单点是判断文件名字最后几个字节是否有'.'的文件后缀符号,代码如下:

int lenth=strlen(DirName);
int Isfile=false;
for (int i=1;i<10;i++)
{
if (DirName[lenth-i]=='.')
{

Isfile=true;
break;
}

}
if (Isfile==true)
{
sprintf(tempFileFind,"%s",DirName);//文件
}
else
{
sprintf(tempFileFind,"%s\\*.*",DirName);//匹配格式为*.*,即该目录下的所有文件
}


经过测试,可以正常的转换单个文件成gbk





你可能感兴趣的:(修改原来的Source Insight完美转换UTF-8 到 GB2312)