JV-Dataの使い方あれこれ |
タイトル | : C#でのJVGetsの使用方法を教えていただけないでしょうか。 |
記事No | : 2384 |
投稿日 | : 2011/03/04(Fri) 20:43 |
投稿者 | : HOPE |
|
「プログラミング質問広場」で質問しましたが、解決しなかったこと、JV-Data のことなので本来こちらの掲示板の方で質問する内容と考えられることから、再 投稿いたします。
JVGetは第一引数のバイト配列に読み込んだデータを渡すようになっていますが 、C#の場合は書式は次のようになっており、オブジェクトの参照渡しをするよ う になっています。 public virtual int JVGets(ref object buff, int size, out string filena me);
これに基づき次のようにobjectを渡し、そのobjectを型変換しましたが、上手 くデータを読むことができません。stringにキャストしても同じでした。 byte[] buffer = new byte[1100000];としてこれをobjectとしても駄目でした 。
object strB=null ;
lReturnCode = this.axJVLink1.JVGets(ref strB, lBuffSize, out strFileNam e);
string strBuff = strB.ToString();
strBuffに読み込んだ内容を入れたいのですが入っておりません。 どのようにしたらJVGetsを使うことができるのでしょうか。 |
|
タイトル | : Re: C#でのJVGetsの使用方法を教えていただけないでしょうか。 |
記事No | : 2385 |
投稿日 | : 2011/03/07(Mon) 16:10 |
投稿者 | : JRA-VANソフトサポート |
|
JRA-VANソフトサポートの竹下です。 DataLab.サービスをご利用頂きまして誠にありがとうございます。
はじめに、記載いただいた質問はJV-Linkの利用方法に関する質問と なりますので、「JV-Link質問箱」もしくは「プログラミング 質問広場」にて投稿いただけますようお願い申し上げます。
さて、ご質問いただいた内容についてですが、
>byte[] buffer = new byte[1100000];
JVGetsは内部でReturnする際にByte SafeArrayをセットして返します。 上記のようにオブジェクト"strB"にバイト型配列"buffer"をセット し、"lBuffSize"にも宣言したバイト配列の大きさと同じ値を設定し てください。
以下にコード例を挙げます。
// JVGetsに渡す変数の初期化 object strB = null; int lBuffSize = 1100000; string strFileName;
// オブジェクトにバイト型配列を設定 byte[] buffer = new byte[1100000]; strB = buffer;
// JVGets読込後変換用変数 byte[] retByteData; string retStrData;
// JVGets呼び出し lReturnCode = this.axJVLink1.JVGets(ref strB, lBuffSize, out strFileName);
// JVGets正常読込 if (lReturnCode > 0) { // JVGetsでセットされたobject "strB"をバイト配列に変換 retByteData = (byte[])strB; // 文字コードを指定して文字列に変換(SJIS) retStrData = System.Text.Encoding.GetEncoding(932).GetString(retByteData); }
JVGetsにてセットされたobject "strB"をアプリケーション側で バイト型配列にキャストします。 そのキャストしたバイト型配列にstring(SJIS)変換処理を 行うことでretStrDataに値がセットされていることが ご確認いただけます。
あくまで一例ですので参考情報としてお考えください。
以上、よろしくお願い致します。 |
|
タイトル | : Re^2: C#でのJVGetsの使用方法を教えていただけないでしょうか。 |
記事No | : 2386 |
投稿日 | : 2011/03/08(Tue) 20:24 |
投稿者 | : HOPE |
|
|
|
copyright ©2007 JRA SYSTEM SERVICE CO.,LTD. All Rights Reserved.
|
|
|