各プログラミング言語には、内部文字列の文字コード(以下、内部文字コードと呼ぶ)がある。
外部から読み込んだデータをそのままで扱う場合は内部文字コードを意識することはないが、読み取ったデータを文字列として扱ってゴニョニョする場合は、一旦、内部文字コードに変換されることになる。なので、外部から読み込んだデータの文字コード⇒内部文字コードへの変換の処理(デコード処理)を書かないといけないことが多い。この処理がないと、誤った変換が行われてデータが解釈不能なものになってしまうことがある。
また、内部文字コードに変換したら、それを出力する時は、出力先で扱える文字コードに合わせて、内部文字コードから外部文字コードに適切にエンコードする必要がある。