パソコン悪戦苦闘記録

テキストファイルの文字コードUTF-8

 昨日(2022年9月18日)の記事では、
    「テキストファイルは万能だ。
って書きました。

  その昨日の記事は、
    こちらをご覧ください。

 「万能」という言い方は誤解を与えかねない表現ですが、「多くのアプリケーションソフトで扱える。」っていう意味、ただそれだけの意味です。
 テキストファイルは、単にテキスト(文字)情報だけを保存する、単純なファイルです。その単純さゆえに、単純だからこそ、いろんなアプリで、読み込み、それから処理が可能なのです。

 ただし、中味は単純ではあるけれども、テキストファイルには、いつも付きまとう問題が一つあります。文字コードの問題です。
 文字コードにはいくつか種類があって、文字コードが一致しないと文字化けを起こします。

 Windows10や11に標準で備わっている簡易エディタ「メモ帳」のデフォルト(既定)の文字コードは、
  「BOMなしのUTF-8
です。
 それに合わせるように、オープンソースのテキストエディター「サクラエディタ」においても、デフォルトの文字コードが途中から変わりました。2020年4月にリリースされたバージョン2.4.0から、BOMなしのUTF-8が、デフォルトの文字コードになっています。

 ですから、現在においては、多くのテキストファイルが、UTF-8の文字コードを使って作成されているのではないでしょうか(個人的な憶測です。正確な裏付けはありません。)。






 そして、ExcelマクロやWordマクロを使ってテキストファイルを開くのに、
対象となるテキストファイルの文字コードが何かによって、方法が違ってきます。
 Shift-Jis の場合、
  Open myTxt For Input As #1
というVBAコードになります。
 
 対して、UTF-8の場合
  ADO(ActiveX Data Objects)の Stream オブジェクト(ADODB.Stream)を使用します。

 ADOなんて、一般の人にはちんぷんかんぷんの言葉でしょうが、要するにデータベースにアクセスする仕組みの一つです。そんな説明をされても、なお分からないでしょうが、それでいいと思います。私も、中味はよく分かりません。

 従前は、Open myTxt For Inputというコードでテキストファイルを扱っていました。でも、これからは、ADO(ActiveX Data Objects)を使ったコードをも覚えていくことにします。

 デジタルの世界は、どんどん発展していくので、ついていくのが大変です。




それでは、また次の記事で
goosyun


《2022年9月23日追記》
 ADOのStreamオブジェクトを使ったテキストファイル入出力操作について、解説記事を書きました。
 VBAコードも掲載しています。
   こちらの記事をご覧ください。
名前:
コメント:

※文字化け等の原因になりますので顔文字の投稿はお控えください。

コメント利用規約に同意の上コメント投稿を行ってください。

 

  • Xでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最近の「VBAプログラミング・マクロ」カテゴリーもっと見る

最近の記事
バックナンバー
人気記事