亂碼問題 Quoted printable編碼

2021-10-21 17:26:14 字數 588 閱讀 8364

收到郵件客戶端開啟顯示亂碼,跟網頁源**很像,但是有很多「3d」,「=」這些,郵件頭中有content-transfer-encoding:quoted-printable這樣的**。從網上找了一下,是quoted-printable編碼的問題。

1,簡介

它是多用途網際網路郵件擴充套件(mime)的一種實現方式。mime是乙個網際網路標準,它擴充套件了電子郵件標準,致力於使其能夠支援非ascii字元、二進位制格式附件等多種格式的郵件訊息。目前http協議中,很多採用mime框架!就是說用一些可列印常用字元,表示乙個位元組(8位)中所有非列印字元的方法。

2,出現 3d 和 = 的原因

任何乙個8位的位元組值都可以編碼為3個字元:乙個=後面跟兩個16進製制的數字(0-9或a-z)表示該位元組的數值。例如,ascii碼換行符(十進位制12)可以表示為「=0c」,等號「=」(十進位制61)必須表示為「=3d」,除了可列印ascii字元與換行符之外,所有字元必須表示為這種格式。

quoted-printable編碼的資料每行長度不能超過76個字元,為滿足次要求又不改變被編碼文字,在qp編碼結果的每行末尾加上軟換行(soft line break)。即在每行末尾加上乙個「=」,但並不會出現在解碼得到的文字中。

亂碼問題 Qt中文亂碼問題

接觸了qt,由於習慣中vs,如果使用vs寫qt 剛接觸很快就發現有中文亂碼問題,我的解決方法如下 新建乙個標頭檔案,比如qtchcharset.h,標頭檔案中內容如下 pragma once ifdef q os win q os win 新增後支援gb2312,utf 8 bom,unicode ...

中午亂碼 html亂碼問題

亂碼問題的原因 計算機只識別0,1,在計算機中的任何內容最終都會轉化為0,1這種二進位制編碼來儲存。如果一旦在編碼或者解碼的過程 現問題均會造成亂碼問題。產生亂碼的根本原因 編碼和解碼所採用的字符集不同。首先了解一下基本知識 常用的字符集 ascii,ioso 8859 1,gbk,gb2312,u...

jsp亂碼問題

在jsp頁面中出現亂碼 你可以用像這樣的語句來處理,iso 8859 1是網上統一的一種編碼方式 stringname.getbytes iso 8859 1 gbk 在mysql中的亂碼 你可以在建表的時候指定字符集,形如這樣 create table cr user id integer uns...