① 求:批量轉化工具(將文本編碼UTF-8轉化成ANSI 或者轉化成ASCII)
用電腦的記事本另存為就可以轉換。手機的話,只要下載一個TXT閱讀器就可以。
② 如何把txt 批量從utf8轉換為ascii,最好有工具
比如 文件批量處理百寶箱V8.0 主界面-更多功能-拓展界面-文本碼制轉換中的功能。
③ UTF-8編碼轉ASCLL的工具,電腦
樓主先要明白幾點:請仔細讀懂
1、UTF-8編碼包括世界各種語言,字元集有5-6萬之巨。ASCII編碼只有128個字元。
嚴格意義上的「對ASCII碼的轉換」,就只能轉換UTF-8中的128個字元。而其餘的5-6萬字元(包括漢字在內)是不能轉換成ASCII編碼的。
2、基本上現代高級編程語言工具都提供這種轉換的簡易方式,比如python,java,php,ruby。
舉php為例。用幾行代碼即可完成
$s=file_get_contents('utf-8文本.txt');
$s=iconv('utf-8','ASCII',$s);
file_put_contents(『新建ascii文本.txt'); //存入新文件
④ linux iconv怎樣將utf-8轉換ascii 字元集
在Linux中查看文件編碼可以通過以下幾種方式:
1.在Vim中可以直接查看文件編碼
:set fileencoding
即可顯示文件編碼格式。
如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那麼你可以在
~/.vimrc 文件中添加以下內容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開。
2. enca (如果你的系統中沒有安裝這個命令,可以用sudo yum install -y enca 安裝 )查看文件編碼
$ enca filename
filename: Universal transformation format 8 bits; UTF-8
CRLF line terminators
需要說明一點的是,enca對某些GBK編碼的文件識別的不是很好,識別時會出現:
Unrecognized encoding
文件編碼轉換
1.在Vim中直接進行轉換文件編碼,比如將一個文件轉換成utf-8格式
:set fileencoding=utf-8
2. enconv 轉換文件編碼,比如要將一個GBK編碼的文件轉換成UTF-8編碼,操作如下
enconv -L zh_CN -x UTF-8 filename
3. iconv 轉換,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如將一個UTF-8 編碼的文件轉換成GBK編碼
iconv -f GBK -t UTF-8 file1 -o file2
⑤ 誰能給個ascii轉utf8的類或代碼
ascii和utf8是2個不同的概念。不能並列說的。
你可以搜索
ascii2uni
的軟體源碼。
⑥ 大神們,AIX下,如何用C實現UTF8的中文轉成ASCII
用MultiByteToWideChar和WideCharToMultiByte可以做到編碼的轉換。
MultiByteToWideChar是一個windows API 函數,該函數映射一個字元串到一個寬字元(unicode)的字元串。
函數原型:int MultiByteToWideChar(UINT CodePage,DWORD dwFlags,LPCSTR lpMultiByteStr,int cchMultiByte,LPWSTR lpWideCharStr,int cchWideChar);
參數:CodePage:指定執行轉換的字元集,這個參數可以為系統已安裝或有效的任何字元集所給定的值。你也可以指定其為下面的任意一值:CP_ACP:ANSI字元集;CP_MACCP:Macintosh代碼頁;CP_OEMCP:OEM代碼頁;CP_SYMBOL:符號字元集(42);CP_THREAD_ACP:當前線程ANSI代碼頁;CP_UTF7:使用UTF-7轉換;CP_UTF8:使用UTF-8轉換。dwFlags:一組位標記用以指出是否未轉換成預作或寬字元(若組合形式存在),是否使用象形文字替代控制字元,以及如何處理無效字元。你可以指定下面是標記常量的組合,含義如下:MB_PRECOMPOSED:通常使用預作字元——就是說,由一個基本字元和一個非空字元組成的字元只有一個單一的字元值。這是預設的轉換選擇。不能與MB_COMPOSITE值一起使用。MB_COMPOSITE:通常使用組合字元——就是說,由一個基本字元和一個非空字元組成的字元分別有不同的字元值。不能與MB_PRECOMPOSED值一起使用。MB_ERR_INVALID_CHARS:如果函數遇到無效的輸入字元,它將運行失敗,且GetLastErro返回ERROR_NO_UNICODE_TRANSLATION值。MB_USEGLYPHCHARS:使用象形文字替代控制字元。組合字元由一個基礎字元和一個非空字元構成,每一個都有不同的字元值。每個預作字元都有單一的字元值給基礎/非空字元的組成。在字元è中,e就是基礎字元,而重音符標記就是非空字元。函數的預設動作是轉換成預作的形式。如果預作的形式不存在,函數將嘗試轉換成組合形式。標記MB_PRECOMPOSED和MB_COMPOSITE是互斥的,而標記MB_USEGLYPHCHARS和MB_ERR_INVALID_CHARS則不管其它標記如何都可以設置。lpMultiByteStr:指向將被轉換字元串的字元。cchMultiByte:指定由參數lpMultiByteStr指向的字元串中位元組的個數。如果lpMultiByteStr指定的字元串以空字元終止,可以設置為-1(如果字元串不是以空字元中止,設置為-1可能失敗,可能成功),此參數設置為0函數將失敗。lpWideCharStr:指向接收被轉換字元串的緩沖區。cchWideChar:指定由參數lpWideCharStr指向的緩沖區的寬字元個數。若此值為零,函數返回緩沖區所必需的寬字元數,在這種情況下,lpWideCharStr中的緩沖區不被使用。
返回值:如果函數運行成功,並且cchWideChar不為零,返回值是由lpWideCharStr指向的緩沖區中寫入的寬字元數;如果函數運行成功,並且cchWideChar為零,返回值是接收到待轉換字元串的緩沖區所需求的寬字元數大小。如果函數運行失敗,返回值為零。若想獲得更多錯誤信息,請調用GetLastError函數。它可以返回下面所列錯誤代碼:ERROR_INSUFFICIENT_BUFFER;ERROR_INVALID_FLAGS;ERROR_INVALID_PARAMETER;ERROR_NO_UNICODE_TRANSLATION。
WideCharToMultiByte,該函數映射一個unicode字元串到一個多位元組字元串。函數原型:int WideCharToMultiByte(UINT CodePage, //指定執行轉換的代碼頁DWORD dwFlags, //允許你進行額外的控制,它會影響使用了讀音符號(比如重音)的字元LPCWSTR lpWideCharStr, //指定要轉換為寬位元組字元串的緩沖區int cchWideChar, //指定由參數lpWideCharStr指向的緩沖區的字元個數LPSTR lpMultiByteStr, //指向接收被轉換字元串的緩沖區int cchMultiByte, //指定由參數lpMultiByteStr指向的緩沖區最大值LPCSTR lpDefaultChar, //遇到一個不能轉換的寬字元,函數便會使用pDefaultChar參數指向的字元LPBOOL pfUsedDefaultChar //至少有一個字元不能轉換為其多位元組形式,函數就會把這個變數設為TRUE);參數:CodePage:指定執行轉換的代碼頁,這個參數可以為系統已安裝或有效的任何代碼頁所給定的值。你也可以指定其為下面的任意一值:CP_ACP:ANSI代碼頁;CP_MACCP:Macintosh代碼頁;CP_OEMCP:OEM代碼頁;CP_SYMBOL:符號代碼頁(42);CP_THREAD_ACP:當前線程ANSI代碼頁;CP_UTF7:使用UTF-7轉換;CP_UTF8:使用UTF-8轉換返回值:如果函數運行成功,並且cchMultiByte不為零,返回值是由 lpMultiByteStr指向的緩沖區中寫入的位元組數;如果函數運行成功,並且cchMultiByte為零,返回值是接收到待轉換字元串的緩沖區所必需的位元組數。如果函數運行失敗,返回值為零。若想獲得更多錯誤信息,請調用GetLastError函數。它可以返回下面所列錯誤代碼:ERROR_INSUFFICIENT_BJFFER;ERROR_INVALID_FLAGS;ERROR_INVALID_PARAMETER;ERROR_NO_UNICODE_TRANSLATION。注意:指針lpMultiByteStr和lpWideCharStr必須不一樣。如果一樣,函數將失敗,GetLastError將返回ERROR_INVALID_PARAMETER的值。Windows CE:不支持參數CodePage中的CP_UTF7和CP_UTF8的值,以及參數dwFlags中的WC_NO_BEST_FIT_CHARS值。
⑦ 如何將ascii的字元串轉換成utf8
如果你說的ascii碼值
是標準的0-127
那不需要轉的
直接就可以用
如果是漢字編碼 比如gb2312 轉成utf8需要查表 或者 找專門的庫
比如 java 裡面就有toUtf8
⑧ 如何將UTF-8轉換為ASCI
vb代碼么,WideCharToMultiByte、MultiByteToWideChar這兩個API
ASP.net 中則可以簡單的使用下面代碼:
Encoding gb2312 = Encoding.GetEncoding("gb2312");
Response.ContentEncoding = gb2312;
參見這篇文章
http://blog.joycode.com/ghj/archive/2005/05/19/51584.aspx
我說的已經夠清楚了,如果想用程序轉,.net封裝了API,不用.net的話只能用API了
⑨ 有ASCII編碼文件轉utf8文件的批處理工具嗎
有,不過是調用VBS代碼的。
@echooff
(echoaCode="GB2312"
echobCode="UTF-8"
echoSetobjArgs=WScript.Arguments
echo.
echoFileUrlSrc=objArgs^(0^)
echoFileUrlDst=objArgs^(1^)
echoCallWriteToFile^(FileUrlDst,ReadFile^(FileUrlSrc,aCode^),bCode^)
echo.
echoFunctionReadFile^(FileUrlSrc,CharSet^)
echoDimStr
echoSetstm=CreateObject^("Adodb.Stream"^)
echostm.Type=2
echostm.mode=3
echostm.charset=CharSet
echostm.Open
echostm.loadfromfileFileUrlSrc
echoStr=stm.readtext
echostm.Close
echoSetstm=Nothing
echoReadFile=Str
echoEndFunction
echo.
echoFunctionWriteToFile^(FileUrlDst,Str,CharSet^)
echoSetstm=CreateObject^("Adodb.Stream"^)
echostm.Type=2
echostm.mode=3
echostm.charset=CharSet
echostm.Open
echostm.WriteTextStr
echostm.SaveToFileFileUrlDst,2
echostm.flush
echostm.Close
echoSetstm=Nothing
echoEndFunction)>"%tmp%ANSI2UTF8.vbs"
"%tmp%ANSI2UTF8.vbs""%~1""%~dp1\%~n1_utf8%~x1"
del"%tmp%ANSI2UTF8.vbs"
使用方法,把上面代碼保存為BAT文件,然後把要轉換的文件直接往BAT文件上拖,最後會在文件同目錄生成一個「被轉換的文件名_utf8.後綴」的文件。
⑩ 如何將UTF-8格式的字元串轉換成ASCII字元串
WideCharToMultiByte(CP_UTF8, 0, strSrc, -1, NULL, 0, NULL, NULL);