• ベストアンサー

VB6.0 sp5]テキストボックスと保存・読み込み

どもです。お願いします。 text1 ~ text15まであります。 multiline = trueですが一行のみです。 text1 ~ text4くらいまでに文字を入れて 保存を押します。 a = text1.text b = text2.text c = text3.text d = text4.text  ・(以下省略)    ・    ・ Open ***** For Output As #1 Write #1, a,b,c,d,e,f,g ・・・・・・ 次にさっき保存したのを読み込みます。  Open ***** For input As #1 input #1, a,b,c,d,e,f,g ・・・・・・ text1.text = a text2.text = b text3.text = c  ・(以下省略)   ・   ・ a = "あいうえお" b = "かきくけこ" と入っている場合、読み込んだときに text1 に「あいうえお」 と入るはずなのですが text1に 「あい」 text2に 「うえお」 text3に「かき」 text4に「く」 text5に「けこ」な感じで 何も入っていないテキストまでにも文字が分解されて入っていきます。 文字数の指定もしていないし、マルチラインもtrueなのであと原因がわからないですT_T; もしや・・・と言うのでもよいので助けてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#6356
noname#6356
回答No.3

#1,#2のものですが、シーケンシャルファイルを使わずに、データコントロールを使ってmdbファイルを使うというのもひとつの手です。 そうすれば、記号の件は回避できると思います。

その他の回答 (3)

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.4

カンマ区切り(CVS)ではなく改行区切りで保存するとか。 -- print #1,a print #1,b print #1,c -- line input #1,a line input #1,b line input #1,c --- Multiline=falseが前提です。

a12b12
質問者

お礼

どもです。 なんとか出来ましたが、保存読み込みで新たな 難題が、、、 新スレたてます。

noname#6356
noname#6356
回答No.2

"については Write# 文で、ファイルを書き込んだ場合の文字列の区切り文字として判断されてしまいます。 テキストバックスから文字を読み込んだ際に、"や,の文字があった場合何らかのコードに置換えて保存しておき読み込む際に再度元に戻すというコードを書けばいいんでしょうが、それができないのであれば、ほかの記号を使うしかないですね。 "を使うことはあきらめてください。

noname#6356
noname#6356
回答No.1

一度書き込んだファイル ******* をメモ帳などで開いてみてください。 正常であれば、カンマ区切りで、データが入っているはずです。 それが正常であれば次を考えましょう。

a12b12
質問者

お礼

「今日の昼ごはん」がtext1で任意で入れてもらいます。

a12b12
質問者

補足

どもです。m__m 例題を判りやすくと思い、逆に判りづらくなったようです、すみません。 text1などに入れる文章に"が入るとそこからの文章が次のtextに入ってしまうようなんです。 (この質問すれを立てるときはわからずでした) 普通に「あああ」でテストしたら大丈夫でした。ごめんなさい。 例えば タイトル名:「今日の”お昼ごはん”」な感じで 保存⇒読み込みすると、text1とtext2に分かれるようです。 しかし”をどうしても使いたいのですが、無理でしょうか?

関連するQ&A