2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

sublime text2 > ファイルをUTF-8からShift_JISに変換 > .hファイルは文字化けする > 秀丸:別ファイル名でShift_JISに変換 / ST2:Save Asで元のファイルに保存

Last updated at Posted at 2015-10-28
動作確認
Sublime Text2 + ConvertToUTF8

はまった

UTF-8で保存してしまったファイルをShift_JISに変換しようとしてはまっている。

変換は秀丸でファイル保存時にエンコーディング変換をしている。

  1. .cppファイル : 変換可能
  2. .hファイル : 変換してもASCIIとなり失敗

.hファイルを別の名前の.hファイルにすると Sublime Text2 で開いた時にShift_JISとなるが、元の.hファイルの名前ではASCIIとなる。

Sublime Text2がファイル名に対応するEncoding情報を保持してしまっているのだろうか?

try1

以下の解決策を思いついた。

  1. 秀丸にて元とは違う.hファイル名で保存 (例: xxx.h)
  2. xxx.hファイルをSublime Text2で開く -> 文字化けしない
  3. Sublime Text2のSave As...にて元の.hファイル名で保存

別の名前のファイル名では文字化けしない点を利用。

try2

上記の方法でも文字化けが解消しない時があった。

以下の対応で解決した。

  1. 秀丸にて元とは違う.hファイル名で保存 (例: xxx.h)
  2. xxx.hファイルをSublime Text2で開く -> 文字化けしない
  3. 元ファイルをSublime Text2で開く
  4. 2で開いたファイルの内容をコピーして(ctrl+C)、3で開いたファイル内に上書き(Ctrl+V)して、ファイル保存する。

try 3

try2でうまくいかない場合、try2の方法の中で以下もやってみる。

[File]-[Set File Encoding to]-[Japanese (Shift_JIS)]

try 4

(追記 2016/02/22)

秀丸を使わなくてもSublime Textで

[File]-[Set File Encoding to]-[Japanese (Shift_JIS)]

をしてSaveするだけでも変更できる場合がある(失敗する場合もある)。

ソースをgitで管理している場合は、とりえあずこれをやってみて、失敗した時には変更を破棄して上記のいずれかを試す、というのがよさそう。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?