文字コード character encodingの確かめ方。

Linux

[1]>locale              # 設定をみる。
LANG="ja_JP.UTF-8"
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_ALL=

[2]>nkf -g hage.txt     # 各ファイルのコードを確認する。
UTF-8


[3]>file -b hage.txt    # 別の方法。
Non-ISO extended-ASCII text, with CRLF line terminators

Windows

C:>chcp
現在のコード ページ: 932   # shift-jis

コードページ一覧。
Code Page Identifiers (Windows)

Vim

: set enc?
  encoding=utf-8

Vim / ファイルの中身

: set fileencoding?
  fileencoding=utf-8

セットするには?の代わりに=sjisとかにする。

: set fileencoding=sjis

Vimマニュアル。
mbyte - Vim日本語ドキュメント

Python

20170423 追加。
chardetちゅうモジュールをpipして使う。

In [1]: import chardet

In [8]: import requests

In [9]: r = requests.get(http://kakaku.com)

In [10]: chardet.detect(r.content)
Out[10]: {confidence: 0.99, encoding: SHIFT_JIS, language: Japanese} 

応用。
ファイルをバイナリモードmode=rbで読み込む

In [1]: import chardet

In [2]: f = open(aaa.txt, mode=rb)

In [3]: f.read(100)
Out[3]: bsdfasdfaxe3x81x82xe3x81x84xe3x81x86


In [4]: f.read()
Out[4]: b

In [10]: f = open(aaa.txt, rb)

In [11]: chardet.detect(f.read())
Out[11]: {confidence: 0.87625, encoding: utf-8, language: }

端末の設定をみる。

In [36]: import locale

In [37]: locale.getpreferredencoding()
Out[37]: cp932

参考。

vorfee.hatenablog.jp

qiita.com

tweeeety.hateblo.jp

Linuxで文字コードを変換する方法

qiita.com

ファイル - Dive Into Python 3 日本語版