批處理配合iconv轉碼工具 ,解決Source Insight 中文亂碼問題.
Source Insight不支持uft-8編碼的文本, 需要轉爲ANSI
動動手 給 Source Insight 加個轉碼功能
Source Insight 詳細的添加功能的方法,請搜索我的其他"Source Insight"相關文章
添加命令 隨便起一個名字
運行命令填寫: "D:\IDE\iconv\u2g.bat" %f
路徑改一下
最後修改批處理中iconv程序的路徑即可
@echo off title utf8轉gb2312_基於Iconv的編碼轉換工具v1.1 by嘎子 2015-09-30更新 cd /d "%~dp1" set filename=%~nx1 set pats=%~dp1 ::首次使用,請修改下面的IconvPath的路徑!!!!!!!!!!!!! set IconvPath="D:\IDE\iconv\iconv.exe" if "%filename:~-2%"==".c" goto :single if "%filename:~-4%"==".xml" goto :single if "%filename:~-2%"==".h" goto :single if "%filename:~-4%"==".cpp" goto :single if "%filename:~-5%"==".java" goto :single if "%filename:~-3%"==".cs" goto :single if "%filename:~-4%"==".txt" goto :single cls color 0a ECHO %filename% ECHO 不支持這種文件類型,想要支持它請手動修改相關代碼 pause exit :single echo. if not exist "%pats%/backup" mkdir "%pats%/backup" ECHO 轉換的文件:%filename% >> backup/log.txt if not exist "%pats%/backup/%filename%" ( copy /y "%filename%" "backup/%filename%" & echo 執行備份... ) else ( echo "%filename%" 文件已備份過,未執行備份. ) echo. echo 正在檢查文本編碼,防止重複轉換時,出現中文丟失... echo. %IconvPath% -f utf-8 "%filename%" >nul if errorlevel 1 goto err echo. echo 正在執行轉換... %IconvPath% -c -f utf-8 -t gb2312 "%filename%" > "tmp" & move "tmp" "%filename%" ping /n 3 127.1>nul exit :err echo. echo 文本不是utf-8編碼, 未執行轉換到gb2312. echo. pause exit
更新日誌:
2015-09-30
轉換前先執行檢查文本編碼,防止重複轉換時,出現中文丟失...