文字列の値は、終端 null の文字の連なりで表現されます。
SWF 5 以前のものでは、 STRING の値は ANSI (ASCII のスーパーセット) か shift-JIS (日本語のエンコーディング方式) のうちいずれかでエンコードされていて、エンコーディング方式がどちらになっているか指し示すことができないため、Flash Player の実行環境のロケールにより決定されていました。 これは、 SWF 5 以前のコンテンツが ANSI か shift-JIS のどちらかでしかテキストのエンコードができないことを意味し、ターゲットとなるユーザ層をオーサリング環境と合わせる必要がありました。 SWF 6 以降では、常に Unicode の UTF-8 標準に合わせて STRING の値がエンコードされるようになりました。 これはマルチバイトのエンコーディング方式で、1 文字が 1 ~ 4 バイトの間に収まります。 UTF-8 は ASCII のスーパーセットで、 UTF-8 の 0 ~ 127 の値の範囲は、 ASCII のマッピングと同一の内容になります。 UTF-8 では 1 文字が複数バイトで構成される場合でも、中に 0 (null キャラクタ) が含まれないことを保障します。 これは、文字列中に null が出現することを避け、 ASCII 文字列のように null が正しく文字列の終端を指すことを意味します。