1. 程式人生 > >Source Insight 中文亂碼,用iconv轉碼,解決中文亂碼問題_20150930更新

Source Insight 中文亂碼,用iconv轉碼,解決中文亂碼問題_20150930更新



 

 批處理配合iconv轉碼工具 ,解決Source Insight 中文亂碼問題.

 Source Insight不支援uft-8編碼的文字, 需要轉為ANSI

動動手 給 Source Insight 加個轉碼功能

  

Source Insight 詳細的新增功能的方法,請搜尋我的其他"Source Insight"相關文章



 

 新增命令 隨便起一個名字

執行命令填寫:  "D:\IDE\iconv\u2g.bat" %f

路徑改一下

最後修改批處理中iconv程式的路徑即可

C程式碼  收藏程式碼
  1. @echo off  
  2. title utf8轉gb2312_基於Iconv的編碼轉換工具v1.1  by嘎子  2015-09-30更新  
  3. cd /d "%~dp1"  
  4. set filename=%~nx1  
  5. set pats=%~dp1  
  6. ::首次使用,請修改下面的IconvPath的路徑!!!!!!!!!!!!!  
  7. set IconvPath="D:\IDE\iconv\iconv.exe"  
  8. if "%filename:~-2%"==".c" goto :single  
  9. if "%filename:~-4%"==".xml"   goto :single  
  10. if "%filename:~-2%"==".h"   goto :single  
  11. if "%filename:~-4%"==".cpp"   goto :single  
  12. if "%filename:~-5%"==".java"   goto :single  
  13. if "%filename:~-3%"==".cs"   goto :single  
  14. if "%filename:~-4%"==".txt"   goto :single  
  15. cls  
  16. color 0a  
  17. ECHO %filename%  
  18. ECHO 不支援這種檔案型別,想要支援它請手動修改相關程式碼  
  19. pause  
  20. exit  
  21. :single  
  22. echo.  
  23. if not exist "%pats%/backup"  mkdir "%pats%/backup"  
  24. ECHO 轉換的檔案:%filename% >> backup/log.txt  
  25. if not exist "%pats%/backup/%filename%" (  
  26. copy /y "%filename%"  "backup/%filename%" & echo 執行備份...  
  27. else (  
  28. echo "%filename%" 檔案已備份過,未執行備份.  
  29. )  
  30. echo.  
  31. echo 正在檢查文字編碼,防止重複轉換時,出現中文丟失...  
  32. echo.  
  33. %IconvPath%  -f utf-8  "%filename%" >nul   
  34. if errorlevel 1 goto err    
  35. echo.  
  36. echo 正在執行轉換...  
  37. %IconvPath% -c -f utf-8 -t gb2312 "%filename%" > "tmp" & move "tmp" "%filename%"    
  38. ping /n 3 127.1>nul  
  39. exit  
  40. :err  
  41. echo.  
  42. echo 文字不是utf-8編碼, 未執行轉換到gb2312.  
  43. echo.  
  44. pause  
  45. exit  

 更新日誌:

2015-09-30

轉換前先執行檢查文字編碼,防止重複轉換時,出現中文丟失...