• ベストアンサー

VB6.0 特殊文字コードの変換

いつもお世話になっております。 前回、機種依存文字の変換について質問させて頂いた者です。 ㈱⇒(株) 等の&#number;型の文字コードの変換はchrw関数を用いる事で 無事に変換することが出来ました。 また新たに文字コードの変換について教えていただきたいのですが、 &⇒& などの&keyword;型の変換をするような関数など無いでしょうか? 関数だけでなく、こうすれば?っていうのもあれば教えて頂けると 幸いです。 以上です。よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

(1)参照設定で、"Microsoft HTML Object Library"をチェックする。 (2)以下のプログラムでデコード Function Decode(ByVal Text) As String Dim Doc As HTMLDocument Set Doc = New HTMLDocument Doc.body.innerHTML = Text Decode = Doc.body.innerText End Function (3)テストコード  MsgBox Decode("<㈱&>")

その他の回答 (1)

回答No.1

あまり「特殊文字コード」とかいう名称好きじゃないんだよなー。 ============================= さておき、書くのが面倒なので概略だけ説明する。 '参照設定でMicrosoft XML,v6.0を追加しておく 'その関係で,実行環境にもコレが '幅広い環境に対応するために遅延バインディングしたい?嫌だ。 Option Explicit Sub Main() '何故か俺の環境ではMSXML2.DOMDocument60ではうまくいかなかった。 Dim xml As MSXML2.DOMDocument30 Dim inputStr As String Dim outputStr As String 'well-formedな場合にしか有効にならないので '一気に渡さない方がいいかも(well-formedであると断言できる範囲まで) 'HTMLが嫌いで,使っているのがXMLなので,定義されている文字実体参照は限られている。(&nbsp;や&cent;は定義されていません) '一応サンプルとして&cent;を定義してみた。 '実際にはentファイルを読み込むようなコードを書く事になるだろうが,文字列リテラルが長くなって見づらかったので回答では断念。(できるかどうか未検証) inputStr = "<!DOCTYPE x [<!ENTITY cent ""&#x00A2;""><!ELEMENT x (#PCDATA)> ]><x>㈱&#x3042;&amp;&amp;&cent;</x>" Set xml = New MSXML2.DOMDocument30 xml.validateOnParse = True xml.resolveExternals = True xml.loadXML (inputStr) MsgBox (xml.Text) End Sub

関連するQ&A

  • VB6 機種依存文字の変換

    文字列中の「&#12849;」(※1)といった機種依存文字の文字コードを (株)(※2)や丸付き数字などの文字に変換する方法ってありますか? replace関数で変換するしかないでしょうか? ※1:&#は実際は半角です。 ※2:(株)は実際には1文字です。

  • 機種依存文字の文字コード変換

    現在、Shift-JISでCGIを作成しています。言語はPerlです。HTMLファイルから送信された文字をDBに登録するのですが、CGIをShift-JISで作成しているのに、DBがEUCとなっているため、jcode.plを利用して文字コードを変換しています。 しかし、文字が機種依存文字である場合、jcode.plでは文字コード変換ができないようで文字化けを起こした文字をDBに登録しようとしてエラーを起こしてしまいます。 何とか機種依存文字をコード変換したいのですが、可能でしょうか?

    • ベストアンサー
    • Perl
  • vb.net 文字コードから漢字へ変換

    vb .net で文字コードから漢字へ変換する方法を教えて下さい。 例えば 「花」という漢字のコードが"82b1" これを、表示させるために me.TextBox1.Text = 関数的なモノ("82b1") というような事はできますか? さらに、 「花」という漢字の異体字で草冠が++になっている文字が "82b1"+"e0103" これを、表示させるために me.TextBox1.Text = 関数的なモノ("82b1","e0103") というような事はできますか? ※IVS対応フォントと環境は既にあるものとします。

  • phpでの文字コード変換について

    phpでの既存ソース解析を行っている者ですが 文字コードに苦戦しております。 関数でEBCDICからASCII・ASCIIからEBCDICの変換と EUCからJIS8・JIS8からEUCの変換を行っているのですが mb_convert_encoding("XXX","XXX","XXX")では ダメなのでしょうか?? 文字コード自体の理解が浅いのが原因でもありますが どなたか参考URL等ありましたら教えてください。 (一応大体のサイトは拝見しましたが・・・)

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

    mysql4.0でDB内の全ての文字コードを変換する方法はありますか? convertという関数がありますが4.1からでないと使いないようなので困っています。 よろしくお願いします。

    • ベストアンサー
    • MySQL
  • phpMyAdminの文字コード

    いつもお世話になっております。 phpMyAdminで機種依存文字が文字化けを起こします。 以前、機種依存文字について質問をさせていただきましたが その時とは別のサーバで別のシステムを開発しております。 <以前> *phpMyAdminから直接機種依存文字を入力→OK *EUCのフォームから機種依存文字を入力し、データベースに格納→OK <今回> *phpMyAdminから直接機種依存文字を入力→NG *EUCのフォームから機種依存文字を入力し、データベースに格納→NG コマンドでMySQLの文字コードを調べましたら、以下のように返ってきましたので、文字コードはEUCになっていると思っております。 show create database データベース名; | データベース名 | CREATE DATABASE `データベース名` /*!40100 DEFAULT CHARACTER SET ujis */ | また、1つUTF-8のテーブルを作成して、確認してみましたら *phpMyAdminから直接機種依存文字を入力→OK でした。 何をどのように変更したらいいのか、確認するためには何が必要なのか など、皆さまアドバイスをよろしくお願いいたします。

    • 締切済み
    • PHP
  • 文字コード変換ソフト

    いつもお世話になっております。 文字コード変換ソフトで 1、Shift-Jis→UTF8の文字コード変換 2、ディレクトリ指定をすることにより再帰的に文字コード変換してくれる。 上記2点をみたしているフリーソフトをご存知でしたらおしえてください。 1項をみたしているフリーソフトはみつけることができたのですが、2項もみたしているフリーソフトをみつけることができませんでした。 よろしくお願いします。

  • 文字コードの変換方法

    お世話になります。 サーバ上で生成した、文字コードがEUCのテキストファイルをSJISに文字コードを変換したいのですが、nkfコマンドが使用できません。 nkfコマンドを使用せず、EUC⇒SJISへ文字コードを変換する方法をご教示頂けますでしょうか。 また文字コードを変更すれば改行コードの変更はしなくてもいいのでしょうか。 宜しくお願い致します。

  • CIDコードからUNICODEへの変換???

    .NETのC++でプログラムを作っています 外部から文字列が渡されますが、この文字列はCIDコードです これをUNICODEに変換して使用したいのですが、その方法が分かりません 『 CID UNICODE 変換 』をキーワードにして検索しましたが適当な資料に出会えません C++から呼べる変換関数などをご存知でしたらご指導お願い申し上げます 宜しくお願い致します

  • ファイルの文字コード変換

    一度Shift-JISコードで作成したファイルを、そのままの状態でEUCコードに変換することはできないのでしょうか? ◇試したこと 1)文字コード変換ツール(フリーソフトを2,3種類) 2)インターネットエクスプローラで開いて文字コード変換 ◇結果 1)いずれも変換されなかった 2)変換されたが元のファイルのテキストが崩れた かなりたくさんShift-JISファイルがあるので困っています。 いい方法を御存知の方がいらっしゃいましたら御教授いただければ幸いです。