# 文字カウンター

> 無料の文字カウンター：スペース込み・なしの文字数、UTF-8バイト数、X/Twitterの残り文字数、SMSの分割数を入力と同時に表示。

スペース込み・なしの文字数、UTF-8バイト数、単語数、行数をリアルタイムで数え、Xの残り文字数やSMSの分割数も表示します。

*Interactive tool: enter your values at https://toollantern.win/ja/moji-kaunto/ and results update instantly in your browser.*

## 数える項目

7つの数字をリアルタイムで表示します。**文字数（スペース込み）**、**文字数（スペースなし）**、**単語数**、**UTF-8バイト数**、**行数**、**X/Twitterの残り文字数**（280文字中）、**SMSの分割数**です。

## UTF-8バイト数

文字数とバイト数は別物です。UTF-8では英字1文字が1バイト、**é**のようなアクセント付き文字が2バイト、絵文字の多くが4バイトになります。絵文字だらけの100文字のメッセージは400バイトになることもあり、バイト制限のあるAPIやデータベースでは重要です。

## XとSMSの制限

X（Twitter）は1投稿280文字までです。カウンターは残り文字数を表示し、超過するとマイナスになります。SMSはもう少し複雑です。基本的なGSM文字だけなら1通あたり160文字ですが、絵文字やアクセント付き文字が1つでもあると全体がUnicodeモードになり、1通70文字になります。分割送信時は宛先情報のために1通あたり153文字・67文字になります。

## 計算例

**"こんにちは👋"**は6文字、UTF-8で19バイト（絵文字が4バイト、ひらがな各3バイト）、Xの残りは274文字、SMSはUnicodeモードで1通です。

## よくある質問
### X（Twitter）の文字数はどう数えますか？

Xはスペースや絵文字も含め、すべての文字を1文字として280文字の制限に数えます。カウンターは280から文字数を引いた残りを表示します。

### 絵文字のバイト数が多いのはなぜですか？

UTF-8では絵文字や多くの非ラテン文字が1文字あたり最大4バイト必要で、ASCIIの英字は1バイトです。バイト制限のあるデータベースやAPIではバイト数が重要です。

### SMSは何通に分割されますか？

基本的なGSM文字だけなら160で割ります（連結時は1通153文字）。絵文字やGSM外の文字があれば70で割ります（連結時は67文字）。ツールが自動で判定します。

### GSM文字セットとは何ですか？

GSM-7はSMS規格の基本文字セットで、ラテン文字、数字、一般的な記号です。これに含まれない文字（絵文字の多くを含む）があると、メッセージ全体が16ビットのUnicodeモードになり、1通あたりの文字数が減ります。

### テキストはどこかに送信されますか？

いいえ。すべてブラウザ内で数えるため、テキストがアップロードも保存もされることはありません。

---
Interactive version: https://toollantern.win/ja/moji-kaunto/
