mysql:3163
From: Yoshiyuki Asano <Yoshiyuki Asano <asano@xxxxxxxxxx>>
Date: Tue, 06 Feb 2001 12:56:13 +0900
Subject: [mysql 03163] Re: バイナリーデータの扱いについて
ども、浅野@DB4級です >私の場合は、バイナリデータを処理していますので、2バイト >文字をエスケープ処理しているのではありません。エスケープ >処理を行った為に、2バイト文字として認識されているのだと >思います。(指摘された動作の逆の事になるのかな?) バイナリも文字列も関係ありませんよ。 文字列も中身はバイナリですから、扱い方は同じです。 ようは、バイナリデータの中に0x5Cなどが入っていると、 エスケープ文字として処理してしまい、データの内容が 変わってしまうということです。 エスケープの処理は単純で、文字列(バイナリデータでも) の先頭から1バイトづつ検索してエスケープ文字があれば \を追加するといったものです。 バイナリデータにこれを行うと、もしデータの途中で 0x00が存在したら、そこで終了してしまうと思います。 ですので、引数でデータバッファのポインタとデータのサイズを 受け取り、2バイト文字の一部になっているエスケープ文字以外 に処理をするといったルーチンを自作されるのがいいと思います。 バイナリのデータだからといって、結局あつかうのは文字列 ですので、上記のような処理が必ず必要になってきます。 バイナリファイルをテキストエディタで見ると出てくる文字、 あれで処理してるということです。ですので、データの構造で 2バイト文字が出てくる可能性も当然あるし、それがエスケープ を含む2バイト文字も当然あります。 でもMySQLをSJISで使用しているのであれば、2バイト文字に エスケープ処理をしてしまうとエラーになります。 ですので、半角の部分だけエスケープするルーチンが必要に なってきます。 EUCで使っていれば問題ないんでしょうが... 等幅フォントで見てね(^_-)-☆ ------------------------------------------------- ___ RX-7 GF-FD3S _____/__λ\Д Yoshiyuki Asano (_◎┌(_ノ_◎ノ ==)) ==)) GF_FD3S@xxxxxxxxxx -------------------------------------------------
3156 2001-02-05 16:31 ["Mitsuru Maruno" <ma] バイナリーデータの扱いについて 3158 2001-02-05 23:19 ┣[Toshihiro Fujimori <] 3160 2001-02-06 10:26 ┃┗["Mitsuru Maruno" <ma] 3161 2001-02-06 10:43 ┃ ┗[Yoshiyuki Asano <asa] 3162 2001-02-06 11:06 ┃ ┗["Mitsuru Maruno" <ma] -> 3163 2001-02-06 12:56 ┃ ┗[Yoshiyuki Asano <asa] 3164 2001-02-06 13:24 ┃ ┣[Yoshiyuki Asano <asa] 3165 2001-02-06 13:32 ┃ ┗["Mitsuru Maruno" <ma] 3166 2001-02-06 14:07 ┃ ┗[Yoshiyuki Asano <asa] 3168 2001-02-06 14:30 ┃ ┣["Mitsuru Maruno" <ma] 3169 2001-02-06 14:52 ┃ ┗[Akihiko Shinohara <s] 3170 2001-02-06 15:09 ┃ ┣[Yoshiyuki Asano <asa] 3171 2001-02-06 15:11 ┃ ┗["Mitsuru Maruno" <ma] 3172 2001-02-06 17:02 ┃ ┗[Tomohiro KATO <tomop] 3173 2001-02-06 17:19 ┃ ┗["Mitsuru Maruno" <ma] 3174 2001-02-06 17:28 ┃ ┣[Tomohiro KATO <tomop] 3182 2001-02-07 10:11 ┃ ┃┗["Mitsuru Maruno" <ma] 3175 2001-02-06 17:29 ┃ ┗["Mitsuru Maruno" <ma] 3179 2001-02-06 23:45 ┃ ┗[Toshihiro Fujimori <] 3180 2001-02-07 00:41 ┃ ┣[Toshihiro Fujimori <] 3183 2001-02-07 10:30 ┃ ┗["Mitsuru Maruno" <ma] 3184 2001-02-07 10:50 ┃ ┗[Akihiko Shinohara <s] 3185 2001-02-07 11:13 ┃ ┗["Mitsuru Maruno" <ma] 3186 2001-02-07 12:11 ┃ ┗["Mitsuru Maruno" <ma] 3187 2001-02-07 12:57 ┃ ┣[楠吉彦 <moredebu@xx] 3188 2001-02-07 15:29 ┃ ┣[Akihiko Shinohara <s] 3189 2001-02-07 15:35 ┃ ┃┗[Akihiko Shinohara <s] 3190 2001-02-07 16:02 ┃ ┃ ┗["Mitsuru Maruno" <ma] 3191 2001-02-07 18:18 ┃ ┃ ┗[Akihiko Shinohara <s] 3192 2001-02-07 21:46 ┃ ┗[Toshihiro Fujimori <] 3195 2001-02-08 01:16 ┃ ┗[とみたまさひろ <tomm] 3177 2001-02-06 23:05 ┗[Tomohiro Takahashi <]