• ベストアンサー

テキストの読み書きがうまくいきません。

次の様なプログラムですが、保存したデータと読み込んだデータが一致しません。更に調べたら、保存したときに改行コードが含まれているようです。改行を入れないようにするには、どうしたら良いでしょうか。 Option Explicit Public A As String Public B As String Private Sub Cmd読込_Click() Open App.Path & "\設定.ini" For Input As #1 Text1.Text = StrConv(InputB(LOF(1), #1), vbUnicode) Close #1 A = Text1.Text End Sub Private Sub Cmd比較_Click() If A = B Then MsgBox ("同じ") Else MsgBox ("違う") End Sub Private Sub Cmd保存_Click() Open App.Path & "\設定.ini" For Output As #1 Print #1, Text1.Text Close #1 B = Text1.Text End Sub

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

  • ベストアンサー
noname#140971
noname#140971
回答No.2

改行に関しては既答の通りです。 不一致の原因は、InputB関数を使っているからでしょう。 この関数は、全てを読み込みますからね。 普通に Input # を使えば vbCRLF は読み込まれません。 Private Sub cmd読込_Click()   Open "C:\Temp\Test.txt" For Input As #1   Input #1, A   Close #1 End Sub

noname#33277
質問者

お礼

コードはパクリなので良く分からず使っていました。 問題なく動きました。助かります。

その他の回答 (1)

  • nidoking
  • ベストアンサー率69% (18/26)
回答No.1

";"をprintステートメントの最後につけると開業コードが吐き出されません。 Print #1,Text1.Text;

noname#33277
質問者

お礼

回答ありがとうございます。普通のprint文と同じなんですね。

関連するQ&A

専門家に質問してみよう