1. 漢字怎樣轉換十六進制php
//漢字進制轉換
//$string 傳入的漢字或其它字元
//$tobase 要轉換的進制 范圍 2~36 之間任意取值
//$back 返回形式,0 轉換成進制代碼 ; 1 將進制轉換成漢字
function ASCII($String,$tobase,$back){
if( $tobase > 1 && $tobase < 37 ){
if($back == 0){
return preg_replace('/(.)/es',"str_pad(base_convert(ord('\\1'),10,$tobase),8,'0',STR_PAD_LEFT)",$String);
}else{
return preg_replace('/(\w{8})/e',"chr(base_convert('\\1',$tobase,10))",$String);
}
}else{
return false;
}
}
//範例
$str = '我愛你';
$en = ASCII($str,2,0); // 轉換成2進制: 00
echo ASCII($en,2,1); // 轉換成漢字:我愛你
$en = ASCII($str,8,0); // 轉換成8進制: 40
echo ASCII($en,8,1); // 轉換成漢字:我愛你
$en = ASCII($str,10,0); // 轉換成10進制: 60
echo ASCII($en,10,1); // 轉換成漢字:我愛你
$en = ASCII($str,10,0); // 轉換成10進制: 60
echo ASCII($en,10,1); // 轉換成漢字:我愛你
$en = ASCII($str,16,0); // 轉換成10進制: a0
echo ASCII($en,16,1); // 轉換成漢字:我愛你
2. 怎樣將十六進制代碼轉換成文字
具體操作步驟如下:
1、首先,在十六進制編輯模式下,左側是行數,中間是轉換後的十六進制代碼,右側是原始文本內容,如下圖所示,然後進入下一步。
3. 16進制怎麼轉換成中文,解釋詳細點謝謝!
線將16進制轉換成10進制再轉中文 16轉10例如(1C01=1*16^3+12*16^2+0*16+1=7169)轉中文的話在數字後加雙引號例如(string s = s+"");
4. 如何把16進制編碼轉換為中文
void My_Convert(const char* strIn,char* strOut, int sourceCodepage, int targetCodepage)
{
int len = lstrlen(strIn);
int unicodeLen = MultiByteToWideChar(sourceCodepage, 0, strIn, -1, NULL, 0);
wchar_t* pUnicode;
pUnicode = new wchar_t[unicodeLen + 1];
memset(pUnicode, 0, (unicodeLen + 1) * sizeof(wchar_t));
MultiByteToWideChar(sourceCodepage, 0, strIn, -1, (LPWSTR)pUnicode, unicodeLen);
BYTE * pTargetData = NULL;
int targetLen = WideCharToMultiByte(targetCodepage, 0, (LPWSTR)pUnicode, -1, (char *)pTargetData, 0, NULL, NULL);
pTargetData = new BYTE[targetLen + 1];
memset(pTargetData, 0, targetLen + 1);
WideCharToMultiByte(targetCodepage, 0, (LPWSTR)pUnicode, -1, (char *)pTargetData, targetLen, NULL, NULL);
lstrcpy(strOut, (char*)pTargetData);
delete pUnicode;
delete pTargetData;
}
char acInput[] = {0xe5,0x80,0xbc,0xe4,0xb8,0x8d,0xe8,0x83,0xbd,0xe4,0xb8,0xba,0xe7,0xa9,0xba,0xe3,0x80,0x82,0x0d,0x0a,0xe5,0x8f,0x82,0xe6,0x95,0xb0,0xe5,0x90,0x8d,0x3a,0x20,0x73, 0x00};
char acOutput[256] = {0};
My_Convert(acInput, acOutput, CP_UTF8, CP_ACP);
printf("decode: %s\r\n", acOutput);
這樣就可以。
5. php生成中文
中文是由兩個位元組的ascii碼組成的
rand(0xB0, 0xCC) 意思是從16進制0xB0開始到0xCC之間取一個隨機數
chr() 函數把ascii 轉換成字元
點(.) 連接符把另一個chr()生成的字元連起來,就生成了兩個位元組的特殊字元。
輸出之後就是中文了。
6. 如何將16進制轉化成漢字
十六進制和漢字之間不存在轉換關系。
漢字在計算機內部存儲用16位二進制數來存儲,為了書寫方便,將16位二進制數一般寫出十六進制的形式,就是4位十六進制數,按照國標碼和漢字機內碼的轉換方法,漢字存儲時,每個位元組的最高位均為1,也就是1******1*******的形式,轉換成十六進制後,漢字的四位十六進制的第一位和第三位數均大於等於8,否則就不是漢字。
7. PHP中的中文,轉換為16進制的方法
echo RawUrlEncode( $row_xx['xx']);
================
這樣即可。上面這個用raw的更加標准
8. 16進制怎麼轉化為漢字
漢字為雙位元組字元,即兩組十六進制數表示一個漢字,而且前一個字元的ASC碼大於 127。
給個轉換為字元(包括漢字)Delphi 的例子:
procere TForm1.Button1Click(Sender: TObject);
function DeleteSpace(ss: String): String;
var //刪除字元串中所有的空格
i: Integer;
begin
Result := ss;
i := 1;
while i <= Length(Result) do begin
if Result[i] = ' ' then Delete(Result, i, 1)
else Inc(i);
end;
end;
procere GetData(const ss: String; var dt: Array of Integer);
var
i,j: Integer;
sb: String;
begin
for i := Low(dt) to High(dt) do begin
j := 2 * i + 1;
sb := ss[j] + ss[j + 1];
dt[i] := StrToInt('$' + sb);
end;
end;
var
ss,sb,rt: String;
ac: Byte;
id,ct: Integer;
dt: Array of Integer;
begin
Edit2.Text := '';
ss := DeleteSpace(Edit1.Text); //去掉所有空格
ct := Length(ss);
if (ct mod 2) <> 0 then begin //首位<10
ss := '0' + ss;
Inc(ct);
end;
if ss[2] = 'x' then begin //考慮 0x878ABD7DB7CF 格式
Delete(ss, 1, 2);
Dec(ct, 2);
end;
SetLength(dt, ct div 2);
GetData(ss, dt);
rt := '';
if ct > 0 then begin
id := Low(dt);
while id <= High(dt) do begin
ac := dt[id];
if ac < 128 then begin // 單位元組字元
sb := Chr(ac);
Inc(id);
end else begin //雙位元組字元
sb := Chr(ac) + Chr(dt[id + 1]);
Inc(id, 2);
end;
rt := rt + sb;
end;
end;
Edit2.Text := rt;
end;
9. 在PHP中如何把地址欄中16進制轉換成中文,要PHP中代碼語句
echo urldecode($_GET['stra']);
10. PHP 如何將資料庫中存儲的十六進制數轉換為漢字
//字元串轉換成16進制
function str2hex($str){
$hex = '';
for($i=0,$length=mb_strlen($str); $i<$length; $i++){
$hex .= dechex(ord($str{$i}));
}
return $hex;
}
//16進制轉換成字元串
function hex2str($hex){
$str = '';
$arr = str_split($hex, 2);
foreach($arr as $bit){
$str .= chr(hexdec($bit));
}
return $str;
}
function test(){
//utf8字元測試
$str = '中文';
echo mb_strlen($str);
echo '';
$hex = str2hex($str);
echo $hex;
echo '';
$dec = hex2str($hex);
echo $dec;
echo "";
echo "<hr>";
//gbk測試
$gbkstr = mb_convert_encoding($str,'GBK','UTF-8');
echo mb_strlen($gbkstr);
echo '';
$hex = str2hex($gbkstr);
echo $hex;
echo '';
$dec = mb_convert_encoding(hex2str($hex), 'UTF-8', 'GBK');
echo $dec;
echo "";
}