タイトル : Re^2: Socketを用いて得たデータからのヘッダ部取り除きについて 投稿日 : 2006/02/25(Sat) 02:36 投稿者 : ねご
ご回答ありがとうございます。 YAS様のおっしゃられるとおり 返ってくるデータには受信データの前に必ず空行があるようです。 まず、渡されたバイナリをすべて文字コードに変換し、 String型の変数に格納 それをControlChars.CrLfでSplitして 各配列の中身をチェック 文字が入っていなければその行が空白としました。 (実際は文字列比較がうまくいかなかったので、 切り出し関数を使い、エラーが出たら空行としました。) こうして空行の位置を取得したまではよかったのですが、 空行までのバイト数を求めて、(splitで作った配列を空行まで足しあわせる。) 差し引こうとすると、どうも最初の手順のエンコードで何かが変わっているようで 実際よりも10バイトほど小さな値がでて、 差し引いた結果、余計なヘッダのごみがファイルに残ってしまいます。 お教えいただいてからかなり試行錯誤していますが、 バイナリと文字列(エンコード)の壁は高いようです(汗) 見当違いのことをしていたら申し訳ございません。 取り急ぎ現在の状況をご報告して本日は休むことにいたします。 |