文字コードをUTF-8に統一する
日本語を含む文字列で文字化けが起きる原因の多くは、文字コードの不一致です。エンコード時とデコード時でUTF-8に統一すれば、ほとんどの文字化けは防げます。エンコード時とデコード時でツールを変える場合は、両方の文字コード設定を確認してください。CubToolsはUTF-8で処理するため、通常は意識する必要がありません。
入力から余分な文字を取り除く
メールやチャットからコピーしたBase64文字列には、改行や空白が混ざりがちです。デコード前にこれらを取り除くと、エラーの大半は解消します。
特に76文字ごとの改行(MIME形式)はよくある落とし穴です。テキストエディタの置換機能で改行を一括削除すると確実です。正規表現が使えるエディタなら、改行コードを一括で除去できます。
短いデータで先に試す
本番データを流す前に、「Hello」のような短い文字列でエンコード→デコードの往復テストを行うのがおすすめです。往復で元に戻れば、ツール側の設定は正しいと判断できます。往復テストが成功したら、次は実際のデータの先頭部分だけで試すとより確実です。
よくある質問
文字化けしたときの直し方は?
まずデコード時の文字コードをUTF-8に設定し直してみてください。それでも直らない場合は、エンコード元の文字コードがShift_JISなどだった可能性があるため、変換元に確認しましょう。
末尾の「=」は消しても大丈夫ですか?
「=」はパディングと呼ばれる調整文字で、省略してもデコードできるツールが多いですが、厳密な実装ではエラーになることがあります。基本的には残しておくのが無難です。
変換結果が正しいか確認する方法は?
エンコードした結果をそのままデコードして、元の文字列と一致するか確かめるのが最も確実です。一致すれば変換は正しく行われています。