かるツール

テキスト

文字数・バイト数カウント(UTF-8)

テキストのUTF-8バイト数、Unicodeコードポイント数、見た目の文字数、JavaScript文字列長をまとめて数えるツールです。改行コードやBOM、空白を含めたときのデータ量もブラウザ内で確認できます。

集計結果

UTF-8バイト数

0バイト

見た目の文字数
0
コードポイント数
0
JavaScript文字列長
0
行数
0

入力は100,000文字までです。

数え方の設定

入力欄の改行は常にLFになります。CRLFで保存した場合のサイズはここで切り替えます。

UTF-8のBOMは3バイトです。既定では含めません。

数え方ごとの比較

同じテキストでも、数え方と数える範囲で結果が変わります。

UTF-8バイト数

保存・送信されるデータ量

そのまま0
改行を除く0
空白を除く0

UTF-16バイト数

1コードユニットあたり2バイト

そのまま0
改行を除く0
空白を除く0

見た目の文字数

書記素クラスタ

そのまま0
改行を除く0
空白を除く0

コードポイント数

Unicodeの符号位置

そのまま0
改行を除く0
空白を除く0

JavaScript文字列長

string.length

そのまま0
改行を除く0
空白を除く0

UTF-8のバイト長ごとの内訳

コードポイント単位で数えています。日本語は3バイト、多くの絵文字は4バイトです。

1バイト
0
2バイト
0
3バイト
0
4バイト
0

バイト数カウントツールの特徴

入力したテキストのUTF-8バイト数を中心に、見た目の文字数、Unicodeコードポイント数、JavaScript文字列長をまとめて数えます。 データベースのカラム長、APIのリクエスト上限、ファイルサイズなど、「文字数」ではなく「バイト数」で決まる制限を確認するときに使えます。

文章としての分量を測りたいときは文字数カウントを、 変換後のサイズを確かめたいときはBase64エンコード・デコードURLエンコード・デコードの結果を貼り付けて数えてください。 入力内容はブラウザ内だけで処理し、サーバーへ送信も保存もしません。

詳しい説明を開く

UTF-8のバイト数とは

UTF-8は文字ごとに長さが変わる可変長の符号化方式です。ASCIIの英数字と記号は1バイト、ラテン文字の一部やギリシャ文字は2バイト、日本語のひらがな・カタカナ・漢字は3バイト、多くの絵文字や一部の漢字は4バイトになります。 このため「10文字」でも、内容によって10バイトにも40バイトにもなります。

文字数とバイト数が食い違う理由

数え方には主に3種類あります。見た目の文字数(書記素クラスタ)、Unicodeのコードポイント数、JavaScriptの string.length(UTF-16コードユニット数)です。 たとえば「😀」は見た目1文字、コードポイント1個、string.length は2、UTF-8では4バイトになります。 このツールは3つを同時に表示するので、どの数え方で制限がかかっているかを切り分けられます。

絵文字と結合文字の扱い

家族や国旗の絵文字のように、複数のコードポイントをゼロ幅接合子(ZWJ)でつないだ文字は、見た目は1文字でもバイト数は各パーツの合計になります。 「か」に結合濁点を付けて「が」と表す場合も、見た目は1文字、コードポイントは2個、UTF-8では6バイトです。 見た目の文字数は Intl.Segmenter による書記素クラスタ単位で数えています。

改行コードとBOMの扱い

改行はLFなら1バイト、CRLFなら2バイトです。ブラウザの入力欄は改行を常にLFとして扱うため、Windowsのファイルサイズを見積もるときは改行コードをCRLFに切り替えてください。 UTF-8のBOMは3バイトです。既定では数えず、入力の先頭にBOMがある場合は取り除いてから集計します。BOMを含めた場合のサイズはオプションで確認できます。

空白と改行を除いた集計

  • そのまま: 入力したテキストを、選択した改行コードのままで数えます。
  • 改行を除く: 改行だけを取り除いて数えます。1行に連結して送る場合の見積もりに使えます。
  • 空白を除く: 半角スペース、全角スペース、タブ、改行などの空白文字をすべて取り除いて数えます。BOMは空白として扱いません。

よくある質問

入力した文章は保存されますか?

保存されません。入力内容はブラウザ内だけで処理され、サーバーには送信されません。

文字数カウントとの違いは何ですか?

このツールはUTF-8バイト数と数え方の違いを確認するためのものです。原稿用紙換算や段落数など、文章の分量を測る用途には文字数カウントを使ってください。

絵文字はどのように数えますか?

多くの絵文字はUTF-8で4バイト、コードポイント1個、JavaScript文字列長2個、見た目の文字1個として数えます。家族や国旗のように複数のコードポイントを連結した絵文字は、見た目は1文字でもバイト数はその合計になります。

改行はバイト数に含まれますか?

含まれます。LFは1バイト、CRLFは2バイトとして数えます。入力欄の改行は常にLFとして扱われるため、CRLFで保存した場合のサイズは改行コードの選択で切り替えてください。

BOMは数に含まれますか?

既定では含めません。入力の先頭にBOMがある場合は取り除いてから数え、BOMのオプションを有効にしたときだけUTF-8で3バイトを加えます。

Shift_JISやEUC-JPのバイト数も分かりますか?

対応していません。このツールが数えるのはUTF-8とUTF-16のバイト数だけです。日本語のShift_JISは1文字2バイトになることが多く、UTF-8の結果とは一致しません。