文字 / 編碼
位元組計數器(UTF-8、UTF-16與SMS)
計算文字在UTF-8和UTF-16中的位元組數、碼點與可見字元數,以及所需的SMS分段數;也能在不破壞字元的情況下,將文字截斷至位元組上限。
位元組計數器(UTF-8、UTF-16與SMS): 不同系統計算長度的方式不同。網頁和大多數資料庫使用UTF-8:ASCII字元佔1個位元組,大多數帶重音字母、希臘字母或西里爾字母佔2個位元組,中文、日文和韓文字元佔3個位元組,emoji則佔4個位元組。JavaScript計算UTF-16程式碼單元,Python計算碼點,而使用者看到的是字素叢集,因此帶膚色的emoji對讀者來說是一個字元,卻包含兩個碼點和8個UTF-8位元組。SMS可容納GSM字母表中的160個字元;只要出現任何其他字元,容量就會變成70個字元。 全程在瀏覽器中於本機執行,檔案不會上傳至伺服器。
- 分類
- 文字工具
- 使用次數
- 在瀏覽器中
- 費用
- 免費・免註冊
- 可用狀態
- 可立即使用
全程在瀏覽器中執行
這些字元不在GSM字母表中,因此整則訊息會以UCS-2傳送,每部分70個字元:👍 🏽 日 本 語
包含表情符號等4位元組字元:MySQL需要使用utf8mb4字元集才能儲存這些字元;較舊的utf8(utf8mb3)字元集則不接受這些字元。
以位元組計算的限制
許多限制計算的是位元組,而不是字元:資料庫欄位和索引鍵、HTTP標頭和Cookie(每個Cookie約4 KB)、檔名(大多數檔案系統為255位元組),以及付款或訊息API。可容納255個英文字母的限制,可能只能容納85個中文字元或63個表情符號。
讓SMS訊息保持簡短
將彎引號和彎撇號替換為直引號和直撇號,將破折號替換為連字號,並避免使用表情符號,讓訊息保持在GSM字元集內;如此每則可容納160個字元,而不是70個。每增加一段,通常都會按一則獨立訊息計費。
使用方式
- 輸入或貼上文字。
- 查看位元組數、字元數和SMS分段數。
- 輸入位元組上限,查看文字是否符合限制,並取得安全截斷的版本。
隱私與限制
文字會在您的瀏覽器中計算,絕不會上傳。
相關工具
常見問題
為什麼我的資料庫說文字太長?
欄位限制可能計算的是位元組,而不是字元:MySQL索引前綴和許多較舊的系統都使用位元組,因此255個中文字元在UTF-8中需要765個位元組。
為什麼一個emoji會讓我的SMS變成Unicode?
只有在每個字元都屬於7位元GSM字母表時,SMS才會使用該字母表;只要有一個不在其中的字元,例如emoji或彎引號,整則訊息就會切換為UCS-2,每個分段可容納70個字元,而不是160個。
長SMS會如何分段?
每段可容納153個GSM字元或67個UCS-2單元,因為每段都會攜帶標頭,讓手機能將它們重新接在一起;某些字元,例如€和[ ],在GSM中會計算為兩個字元。
免費工具・使用在瀏覽器中次・免註冊