tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトル文字入力バイトについて
記事No13556
投稿日: 2009/04/02(Thu) 13:47
投稿者ふなれなPG
データベースオラクル9iのvarchar2型にデータを格納したいのですが
varchar2型は最高4000バイトで入力文字数は5000バイトまたは7000バイト
と入力の最高値が決まっておりません。(LOB型は使えません)

そこで4000バイトづつ、キーにシーケンスを付けて増やしていけば良いと考えましたが
VBで4000バイトづつ分けて処理する方法が分かりません。

文字列は 「英数全角・半角」「漢字」カタカナは全角で半角カタカナはありません。
1バイト文字と2バイト文字が混ざっておる状態です。。


 ret = LenB(StrConv(Text1, vbFromUnicode))

上記でバイト数は取得できたのですが
この文字列を4000バイトづつ区切っていく方法が分かりません。
区切るときに1バイト文字がくれば良いのですが2バイト文字が
来た場合なのどのように処理すれば良いか教えてください。
よろしくお願いします。

OS:WinXp
VB:VB6SP6

[ツリー表示へ]
タイトルRe: 文字入力バイトについて
記事No13557
投稿日: 2009/04/02(Thu) 15:32
投稿者これ
> 上記でバイト数は取得できたのですが
> この文字列を4000バイトづつ区切っていく方法が分かりません。
> 区切るときに1バイト文字がくれば良いのですが2バイト文字が
> 来た場合なのどのように処理すれば良いか教えてください。

こんにちは。
LenBまでたどり着いたなら、もう少しだったと思うのですが・・・
それよりも こちらのサイトではいろんなサンプルを公開して下さってますよ。

左フレームの カテゴリー別一覧、文字列処理関係で
「文字列を指定の幅にカットする(漢字分断回避)」
なんて、ズバリ!ではないですか?
投稿前の注意事項にも記載がありますが、サイト内検索を活用してくださいね。

[ツリー表示へ]
タイトルRe: 文字入力バイトについて
記事No13558
投稿日: 2009/04/02(Thu) 17:15
投稿者あきら。
数字の文字列に(半角・全角)の意味がないのでしたら、半角を全角へとデータ変換をするのもいいかもしれませんね。
(日本国内限定のデータになるでしょうが…。)

[ツリー表示へ]
タイトルRe^2: 文字入力バイトについて
記事No13559
投稿日: 2009/04/02(Thu) 17:27
投稿者ふなれなPG
返信ありがとうございます。

半角カタカナだけ特別に全角とする仕様となってます。

[ツリー表示へ]