プロセルピナ
Top Internet
Mail
Private
Proxy
Capture
Device
Download Config
and
Words
Online
Help
Online
Home
[BACK]
Top > Proserpine Macro > Commands > readBinfile

 
 readBinfileコマンド
Macro Top | Variables | Constants | Commands | Ex-Commands  


 

readBinfileコマンド


読み込むファイルは dir=file= で指定します。
フルパスで指定する場合は file= だけで指定します。
dir= と file= のパラメータによるファイルの指定

指定したファイルの全内容をバイナリで読み込み、 O:data= で指定した バイナリ変数(バイト列配列) に設定します。
テキストファイルを読み込む場合も、このコマンドでバイナリデータとして読み込んでから、 バイト列を目的のエンコードの文字列に変換するという方法が使えます。

記述例:

  readBinfile:   file=str[1]   O:data=bin[1];

  readBinfile:   dir="C:\\Temp\\Work"   file="Test.txt"   O:data=bin[1];

  readBinfile:   file="C:\\Temp\\Work\\Test.txt"   O:data=bin[1];


 

Sample code


Http-Postのmultipart/form-dataで送信するデータを作成する例です。



この CreatePostDataブロック の例では、 str[1]にポストデータ"name"に設定する文字列、 str[3]にアップロードするバイナリファイル(Jpeg画像)のファイル名を設定してから、 gosubコマンドで呼び出されることを想定しています。
CreatePostDataブロック内での処理で、 str[4]にHttp-PostのContent-Typeヘッダに設定する値が設定され、 作成されたPostデータ(バイナリ)を戻り値として ジャンプ元に戻ります。

文字列の部分は、ToBinaryメソッドでEUC-JPに変換され、 readBinfileコマンドで読み込んだバイナリデータと結合されています。


作成したバイナリデータをファイルに保存するには、writeコマンドを使用します。
次の例では、上記のCreatePostDataをgosubコマンドで呼び出し、戻り値をデスクトップの postData.bin というファイルに保存するものです。





 
文字列への変換

bin[ ]、binl[ ] に読み込んだバイト列を文字列に変換するには、 ToString()メソッド を使用します。
例えば、bin[1] に格納されているバイト列を EUC-JPの文字列としてデコードして str[1] に設定する場合は、
  str[1]=bin[1].ToString("EUC-JP");
と記述します。

UTF-8の場合はエンコードの指定を省略することができます。
  str[1]=bin[1].ToString;



 
bin[ ]配列のインデックス

bin[ ] 及び binl[ ] のバイト列配列のインデックスには、 整数値以外に文字列が使用できます (str[ ], strl[ ], int[ ], intl[ ] では整数値以外は使用できません)。
次の例では、 binl["myFile"] にファイル C:\MyFile\MyFile.txt の内容を読み込み、UTF-8で文字列にデコードして strl[2] に設定しています。


[BACK]
プロセルピナ