• 締切済み

[VBS] 16進数でバイナリファイル出力したい

すいません、教えて下さい。 VBSを利用して16進数にてバイナリファイルを生成したいです。 例えばSJIS文字コードの文字列"あ"の場合だと16進数では"82A0"です。 その"82A0"を指定してバイナリファイル出力を行いたいです。 自分で色々と試しましたが、何故か出力ファイルの結果がバイナリで"81 45 A0"となってしまい 結果的に"あ"が表示されません、、、。 目的としてはVBSでビット演算子の論理和による暗号化を行いたいです。 申し訳ありませんが、ご教示頂ければ幸いです。

みんなの回答

  • kumatti1
  • ベストアンサー率60% (73/121)
回答No.1

ご参考までに。 VBSでの 16進文字列からバイト配列に変換 のコード例

参考URL:
https://gist.github.com/beckorz/11206586
wansui
質問者

お礼

すいません。 求める内容ではないように見受けられました。

関連するQ&A

  • CGI 16進数をバイナリ-に変換

    sea_clear_sky8です。 今、2バイトの漢字の文字をCGIで、ブラウザに出力するために、 サンプルを解読しています。それは16進数の文字コードを バイナリ-に変換する方法が載っています。 その部分のほんの一部分ですが、この計算しきの意味がわかりません。 char calc; if(src[i]='A')[ /*'A'から'F'のときは10-15*/] calc =src[i]-'A'+10; この計算の仕方と意味がわかりません。 SRC[i]には文字の値(文字コードの値?)が入っていて、 それから、文字のAを引いて10足すと どんな結果が返ってくるのかわかりません。 /*また、4ビット左シフトで上位ビットに*/ calc=calc << 4 というのも意味がわかりません。 ご教授願います。 よろしくお願いします。

  • バイナリーのファイルを16進数でなく文字情報として閲覧するには?

    バイナリーのファイルを16進数でなく文字情報として閲覧するにはどうしたらよいでしょうか? 16進数で閲覧するにはいくつもエディタがあり、実際16進数で見れましたが、文字情報としてみたいのです。 ※といってもメモ帳で開いたときの -A   -A   -A   -A   -A   -A    みたいなものではないです。 宜しくお願い致します。

  • VBAのバイナリ出力について

    この度はお世話になります。 VBAについて、調べながらやっているのですが・・・うまくいかずに悩んでいます。 エクセルのVBAでバイナリファイル(xxx.bin)を出力したいのですが 思った出力が出ないでいます。 エクセルの方でDEC2HEXをした512文字を、そのままの状態でバイナリファイルを生成をしたいです。 そこで、まずはtxtで書き出せるかやってみまして・・・ Sub test() fnsave = "1.txt" Worksheets("Sheet1").Activate numff = FreeFile Open fnsave For Output As #numff temp = Range("C3") Print #numff, temp Close #numff End Sub (Sheet1のセルのC3に512文字入っています。) これをOutputをBinaryにして・・・Putで書く? 多分2文字を取り出して・・・書き込む?ような感じなのですが それをプログラムに起こす書き方がわからず困っています。 申し訳ございませんが、ご教授よろしくお願いします。。。

  • バイナリファイルとバイナリ文字列の違い

    がわかりません。 例えば >http://e-words.jp/w/E38390E382A4E3838AE383AAE58897.html をみるとバイナリ列は1バイトを連ねたものだというらしいです。 つまり【文】という文字列を文字コードUTF-8でバイト配列化すると [1] => 230 [2] => 150 [3] => 135 となります。 (これはPHPでunpackかけましたが他の言語のGetBytes()などでも同じバイト値がでました。) この【文】という文字列はバイナリ列になるわけですよね? 例えばこの【文】という文字だけを保存したbun.txtというファイルはバイナリーファイルに なるのでしょうか? バイナリファイルの定義をみると >http://e-words.jp/w/E38390E382A4E3838AE383AAE38395E382A1E382A4E383AB.html 上記URLだと >文字コードの範囲などを考慮せずに作成されたファイル というのがバイナリファイルであるとあります。 つまりバイナリファイルとは 1バイト・・つまり8ビット(0~255)までの数値で表したものを連ねたもので なおかつ、文字コードなどの解釈を一切行わなずに、バイト値のみが記述されたデータと おもってもよいのでしょうか?

  • どなたか、この問題を解いて教えてください。。

    基本情報技術者試験の勉強中なのですが、この例題が、解説を読んでもわかりません。項目は論理演算です。どなたか、教えていただけないでしょうか? 【問題】 8ビットのデータの下位2ビットを変化させずに、上位6ビットのすべてを反転させる論理演算はどれか? ア 16進数03と排他的論理和をとる イ 16進数03と論理和をとる ウ 16進数FCと排他的論理和をとる エ 16進数FCと論理和をとる 【答え:ウ】 【解説】16進数FCは11111100です。排他的論理和を取ると、上位6ビットは反転され、下位2ビットはそのままとりだせます。 と、書いてあります。2進数に変換するまではわかるのですが、排他的論理和を取るというのは、どういうことなのでしょうか? すみませんが、宜しくお願いします。

  • ビットパターンについて

    以下の命題を解説付きで教えていただけると助かります。よろしくお願いします。 A=(0011), B=(0101)のビットパターンに対し、A・A-のビットパターンは(a)になり、A・Bのビットパターンは(b)になる。したがって、 X=A・Aー+ A・B の論理演算結果の真理値表のビットパターンは(c)になる。ただし「・」は論理積演算子、「+」は論理和演算子、A-, B-はおのおのA,Bの否定演算子を表すものとする。

  • 答えを教えて下さい。続きです。

    式7÷32の結果を2進数で表したものはどれか? ア 0.001011 イ 0.001101 ウ 0.00111 エ 0.0111 ------------------------------------------------ 次の中で1つだけ異なる数がある。それはどれか? 1、10進数の 11 2、2進数の 1011 3、8進数の 12 4、16進数の B ------------------------------------------------ 次のうち、2の補数表現で「-5」を表しているものは? 1.0101 2.1011 3.1100 4.1001 -------------------------------------------------- 16進小数0.FEDCを4倍した値はどれか。 ア1.FDB8 イ2.FB78 ウ3.FB70 エF.EDC0 -------------------------------------------------- 0111に-1をかけたら次のうちどれになるでしょう? (1)1110    (2)1010 (3)0110    (4)1001 ------------------------------------------------ 二つのビット列の対応するビットが異なるとき、(すべてのビットが)1になる論理演算は? 1)否定論理和2)等価演算3)排他的論理和4)論理和 -------------------------------------------------- 4ビットの足し算をするとき半加算器はいくつ必要か。 1.「4個」2.「6個」3.「7個」4.「8個」 ----------------------------------------------- ほんと多くてすいません(><;; これに答えて下さる親切な方、答えだけでもいいので。 お願いします!!

  • Cで出力したバイナリをPythonから読みたい

    C言語でバイナリファイルに出力した配列データを、Pythonで使えるように読み込みたいです。 具体的な状況は以下の通りです。 ①以下のCプログラムを実行してdata.binを作った ``` #include <stdio.h> #include <complex.h> int main(){ int N = 256; double complex a[N]; FILE *fp; for(int i=0; i<N; i++){ /* a[N]に値を代入 */ } fp = fopen("data.bin", "rb"); fwrite(a, sizeof(a), 1, fp); fclose(fp); return 0; } ``` ②Pythonからこのdata.binファイルにアクセスして複素数の配列を得たい、が良い方法がわからない という感じになります。 現状やりかたがわからないので、一旦Cでバイナリファイルをfreadで読み込んでからfprintf等で10進数表記のテキストデータとしてファイル出力して、それをPythonから普通に文字として読み込んでから数値に変換して処理しています。 一回中間ファイルが挟まるので処理が面倒です。Pythonから直接バイナリが読めれば便利かと思い質問させていただきました。

  • 情報数学の宿題助けてください。

    問6 8ビットのデータの下位4ビットを0にし、他のビットは変化させない論理演算はどれか。 ア 16進数F0と論理和をとる。 イ 16進数0Fと論理和をとる ウ 16進数F0と論理積をとる  エ 16進数0Fと論理積をとる 問7 8ビットのデータの左から4ビット目を1、他のビットは変化させない論理演算はどれか ア 16進数01と論理和をとる。 イ 16進数10と論理和をとる ウ 16進数01と論理積をとる  エ 16進数10と論理積をとる 問11 丸め誤差に関する記述として、適切なものはどれか。 ア 演算結果がコンピュータの扱える最大値を超えることによって生じる誤差である。 イ 絶対値のほぼ等しい数値の加減算において、上位の有効数字が失われることによって生じる誤差である。 ウ 浮動小数点数の下位部分が失われることにおいて、指数部が小さい方の数値の仮数部の下位部分が失われることによって生じる誤差である。 エ 数表現のけた数に限度があることによって、最小けたより小さい部分について四捨五入や切り上げ、切捨てを行うために生じる誤差である。 過程もお願い致します。

  • 2進数 問題の意味

    課題で以下のような問題が出されました。 …が、何をすれば良いのか、何が問われているのかが全くわかりません。 詳しく教えて頂けませんでしょうか。 問1.2進数の(11010110)2 を(00101001)2 にビット反転するためにどのような論理演算を行えば良いか。 (11010110)2 の2は右下に小さく表記されています。 この書き方も初めて見ます。 問2.2進数の(1101/0110/0001/1101)2 の右端の4ビットだけを取り出したい。するためにどのような論理演算を行えば良いか。 (1101/0110/0001/1101)2 この書き方も初めてです・・・

専門家に質問してみよう