DOBON.NET DOBON.NETプログラミング掲示板過去ログ

tab区切りのデータの読み込み

環境/言語:[Windows XP/VB6.0]
分類:[VB6以前]

こんにちは。
現在、tab区切りのデータを読み込むプログラムを作成しています。
そこで困った事が発生しました。
通常のデータ-----> TAB>>データ1>>TAB>>>データ2>>>データ3
といったデータは各項目正常に読み取る事が出来ました。

問題なのは
異常データ-----> TAB>>データ1+アクセント記号>>TAB>>>データ2+アクセント記号>>>
データ3+アクセント記号

といったように区切り文字のタブの前にフランス語等で使われるアクセント文字が
入るとタブが認識されず、2つの項目が一つになってしまいます。
split関数を使いタブ1レコードをタブ区切りにしています

VB.NETではこの現象は発生せずに改良されているようです。

VB6.0でこのような現象を体験した方はどなたかいらっしゃいますか?
対処方法をご存知の方は教えてください。

説明がわかりづらくてスミマセン
■No7424に返信(テクノカットさんの記事)
> こんにちは。
> 現在、tab区切りのデータを読み込むプログラムを作成しています。
> そこで困った事が発生しました。
> 通常のデータ-----> TAB>>データ1>>TAB>>>データ2>>>データ3
> といったデータは各項目正常に読み取る事が出来ました。
>
> 問題なのは
> 異常データ-----> TAB>>データ1+アクセント記号>>TAB>>>データ2+アクセント記号>>>
> データ3+アクセント記号
>
> といったように区切り文字のタブの前にフランス語等で使われるアクセント文字が
> 入るとタブが認識されず、2つの項目が一つになってしまいます。
> split関数を使いタブ1レコードをタブ区切りにしています
>
> VB.NETではこの現象は発生せずに改良されているようです。
>
> VB6.0でこのような現象を体験した方はどなたかいらっしゃいますか?
> 対処方法をご存知の方は教えてください。
>
> 説明がわかりづらくてスミマセン

テクノカットさん、こんにちは。
もしかして、そのCSVデータの保存形式がUnicodeになっていませんか?
あるいは、EUCか何か...
たしか、VB6は文字コード形式を自動で判別できなかったはずです。
テキストエディタで開いて文字コード形式を確認してみてください。
■No7425に返信(ぺがらぼさんの記事)
> ■No7424に返信(テクノカットさんの記事)
>>こんにちは。
>>現在、tab区切りのデータを読み込むプログラムを作成しています。
>>そこで困った事が発生しました。
>>通常のデータ-----> TAB>>データ1>>TAB>>>データ2>>>データ3
>>といったデータは各項目正常に読み取る事が出来ました。
>>
>>問題なのは
>>異常データ-----> TAB>>データ1+アクセント記号>>TAB>>>データ2+アクセント記号>>>
>>データ3+アクセント記号
>>
>>といったように区切り文字のタブの前にフランス語等で使われるアクセント文字が
>>入るとタブが認識されず、2つの項目が一つになってしまいます。
>>split関数を使いタブ1レコードをタブ区切りにしています
>>
>>VB.NETではこの現象は発生せずに改良されているようです。
>>
>>VB6.0でこのような現象を体験した方はどなたかいらっしゃいますか?
>>対処方法をご存知の方は教えてください。
>>
>>説明がわかりづらくてスミマセン
>
> テクノカットさん、こんにちは。
> もしかして、そのCSVデータの保存形式がUnicodeになっていませんか?
> あるいは、EUCか何か...
> たしか、VB6は文字コード形式を自動で判別できなかったはずです。
> テキストエディタで開いて文字コード形式を確認してみてください。

文字コードはUNICODEになっていました。
この形式は、社外より支給されるファイルのため、形式を変更して使用する事は
出来ません。
VB.NETでは文字コードを指定してファイルを読むことは出来ますが
VB6.0で文字コードを指定して読み込む事は出来ないのでしょか?
また、他に何か対処方法があれば教えてください。お願いします。
■No7427に返信(テクノカットさんの記事)
> ■No7425に返信(ぺがらぼさんの記事)
>>■No7424に返信(テクノカットさんの記事)
> >>こんにちは。
> >>現在、tab区切りのデータを読み込むプログラムを作成しています。
> >>そこで困った事が発生しました。
> >>通常のデータ-----> TAB>>データ1>>TAB>>>データ2>>>データ3
> >>といったデータは各項目正常に読み取る事が出来ました。
> >>
> >>問題なのは
> >>異常データ-----> TAB>>データ1+アクセント記号>>TAB>>>データ2+アクセント記号>>>
> >>データ3+アクセント記号
> >>
> >>といったように区切り文字のタブの前にフランス語等で使われるアクセント文字が
> >>入るとタブが認識されず、2つの項目が一つになってしまいます。
> >>split関数を使いタブ1レコードをタブ区切りにしています
> >>
> >>VB.NETではこの現象は発生せずに改良されているようです。
> >>
> >>VB6.0でこのような現象を体験した方はどなたかいらっしゃいますか?
> >>対処方法をご存知の方は教えてください。
> >>
> >>説明がわかりづらくてスミマセン
>>
>>テクノカットさん、こんにちは。
>>もしかして、そのCSVデータの保存形式がUnicodeになっていませんか?
>>あるいは、EUCか何か...
>>たしか、VB6は文字コード形式を自動で判別できなかったはずです。
>>テキストエディタで開いて文字コード形式を確認してみてください。
>
> 文字コードはUNICODEになっていました。
> この形式は、社外より支給されるファイルのため、形式を変更して使用する事は
> 出来ません。
> VB.NETでは文字コードを指定してファイルを読むことは出来ますが
> VB6.0で文字コードを指定して読み込む事は出来ないのでしょか?
> また、他に何か対処方法があれば教えてください。お願いします。

こんにちは。
unicode変換関数がありますから、それを利用したら可能だと思います。
> VB6.0で文字コードを指定して読み込む事は出来ないのでしょか?

 既に解決されてるかも知れませんけど、参考までに。
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&namber=5752&no=0&KLOG=1

DOBON.NET | プログラミング道 | プログラミング掲示板