• 締切済み

テキストボックスから読み取り判断

VC++を使っています。 そこでテキストボックスにテキストファイルを読み込み表示しているのですが、その表示したものをfscanfを使って中身を読み取りif文などで判断するプログラムを作りたいのですがfscanfの使い方が勉強してもよくわからずに質問しました。 読み込んだテキストファイルの中は、以下のような形です。 7:00  起床 12:30 昼食 22:00 就寝   時間を読み取り、起床なら「起きる時間です」といったように表示したいのです。 よろしくお願いします。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

fscanfはファイルからの読み込みになります 文字列からなら sscanfになりそうですが ・・・ char lbuf[256]; char sTime[256]; GetDlgItemText( hWnd, IDC_TEXTBOX1, lbuf, sizeof( lbuf )); sscanf( lbuf, "%s", sTime ); if ( strcmp( sTime, "7:00" ) == 0 ) {   MessageBox( hWnd, "起きる時間です", "", MB_OK ); } といった具合です

xxmajimaji
質問者

補足

テキストボックスに表示しているのはテキストファイルなので、 そのファイルの中身を読み取ろうとしていて、fscanfと思ったのですが。 説明が下手なのかもしれませんが、ファイルの中身を直接読み込んで判断を行いたいと考えているのですが。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • テキストファイルについてのプログラム

    初めまして、VC++2005を使っているプログラム初心者です。 windowsフォームアプリケーションというテンプレートを使ってプログラムを作成したいと考えているのですが、どのようにすればよいのかわからず質問しました。ご指導していただけると嬉しいです。 まず、test.txtというテキストファイルの中に以下の内容があります。 8:00  朝食 12:00 昼食 15:00 おやつ 19:00 夕食 というデータです。 このデータをボタンをクリックするとテキストファイルを1行ずつ読んで行き、15:00という文字が出たらテキストボックスに「おやつの時間」というものを表示する方法とまたそのテキストファイルの内容全体を別のテキストボックスに表示したいのですが、どのようにすればよいのでしょうか? fscanfやfopenなどを使うのですが、どうしてもうまくいかないのでよろしくお願いします。

  • テキストボックスの中身をリセット(クリア)したい

    ファイル(*.txtのみ)を読み込んで、テキストボックスに中身を表示させておりますが、2回以上ファイルを読み込んだ時、テキストボックスに書かれた内容を消した上で、読み込んだファイルの中身を表示させるように変更できないでしょうか。また、テキストボックスに書かれた内容をクリアするボタンの作り方も知りたいです。 例、1.ABCと書かれたテキストの読み込み→ABC   とテキストボックスに表示される    2.XYZと書かれたテキストの読み込み→ABC XYZ とテキストボックスに表示される これを2.を読み込んだ時、ABCを表示せずにXYZと表示したい コードの一部 Private Sub Command1_Click() CommonDialog1.Filter = "テキスト(*.txt)|*.txt|すべて(*.*)|*.*" CommonDialog1.FilterIndex = 1 CommonDialog1.Flags = cdlONFileMustExist '既存ファイルのみ読み込み CommonDialog1.CancelError = True On Error Resume Next CommonDialog1.ShowOpen If (Err = 0) Then FileRead CommonDialog1.FileName End If On Error GoTo 0 End Sub

  • テキストボックスをExcelのセルのように扱う方法

    時間を入力するテキストボックスを 作成しています。 表示形式は英数小文字でhh:ssです。 Excelのセルのように、 09:00と入力しても、9:00と自動的に表示し、 また入力した数値をbackspaceで消しても プログラムエラーにならないようにするには どのようにすれば良いでしょうか? (if文を使って制御しているのですが、 うまく制御出来ずにプログラムエラーを 起こしまくっています(^^;)

  • テキストボックスの表示方法

    こんばんは。 Windows形アプリケーションをVB2008(vb.net)で開発してます。 今回はテキストボックスについて教えていただきたいと思います。 テキストファイルを読み込み、テキストボックスに表示させるプログラムがあります。 テキストファイルは1行の場合と複数行の場合があります。 従いまして、テキストボックスのMultilineをTrueにしてます。 ところがテキストファイルが1行のとき、自動的に行が折り返されて、 複数行あるかのように表示されます。 これをなんとか回避して、1行で表示できる方法はありますでしょうか? もちろん複数行の場合は、きちんと複数行を表示です。 可能でしょうか?

  • テキスト入力

    今、数学のFlashのプログラムを作っています。 そこで、2つの等積な三角形を画面から判断し、テキストボックスにキーボードにより入力することで、正誤判定を行おうというものにしたいのですが、どうやればいいのか分かりません。 javaのようにif文の論理和で書いたらいいのでしょうか?

    • ベストアンサー
    • Flash
  • 見えないテキストボックスを作りたい

    urizakaと申します。 さて、さっそく質問なのですが、目に見えないテキストボックスって作るのは可能なのでしょうか?  実は、現在JSPのプログラムを作っているのですが、その際、ページにテキストボックスがひとつしかない状態でそのテキストボックスにカーソルがある状態でEnterキーを押すと、勝手にサーブレットに飛んでしまうという症状が発生したため、もうひとつユーザーの目に見えないテキストボックスを作りたい(テキストボックスが二つある場合はそのような症状は起きない)と思い、<INPUT TYPE="TEXT" name="DUMMY" SIZE="0">と表示してもある程度の大きさのテキストボックスが表示されてしまいます。  いろいろと本などで調べてみたのですが、それらしいことすら書いていない状態なので・・・すみませんが、ご存知の方が教えていただけないでしょうか?  宜しくお願いします。

    • ベストアンサー
    • HTML
  • VBでリッチテキストボックス内印刷

    VisualBasic2010でリッチテキストボックスにテキストファイルの内容を StreamReaderで読み込んでいます。 その際、テキストの中身を基本とし変数で変換したものをリッチテキストに出力しています。 リッチテキストに表示されたもの(元のテキストファイルではダメ)を 印刷したいのですが、方法がわかりません。 ご教授ください。

  • VC++2005 テキストボックス

    現在、VC++2005でプログラムをしているのがどうしてもエラーが出てしまうのでわかる方がいればよろしくお願いします。 プログラムとしては、テキストボックスの中のデータが空だった場合にはある処理を行うというものを作っています。 プログラム本体は、 if(textBox1==NULL) { label1->Text="データがありません\n"; } です。 エラーメッセージは、 エラー 1 error C2446: '==' : 'int' 型から'System::Windows::Forms::TextBox ^' 型への変換ができません。 というメッセージが出てしまいます。 このエラーは、型変換が違っているということのエラーなのでしょうか?どのように修正するとよいのでしょうか? 説明などがとても下手かもしれませんが、よろしくお願いします。

  • テキストボックスの入力チェック。

    Version 6.0 です。 テキストボックスに入力された値の中に任意の文字があるかどうかを判断する関数というのはあるでしょうか?InStrとかでやってみたのですが、If文を繰り返すことになってしまい、見難い状況です。 2つのテキストボックスに年月を入力させ、 "yyyymm"、"yyyym"、"yyyy/mm"、"yyyy/m" が入力可。入力した文字列に"/"があるかないかを判断し、あればそのままでIsDateでチェック。なければ、"/"を入れてIsDateでチェック、とさせたいです。 何か簡単なコードの書き方等あれば、ぜひ教えてください。分かり難いところがあれば、補足します。よろしくお願いします。

  • テクストボックスからセレクトボックスへ

    1.テキストボックスにテキストを入力 2.追加ボタンを押す 3.セレクトボックスに表示 4.セレクトボックスに追加した項目を選択し削除ボタンで削除できる 以下のようなプログラムを教えていただけますでしょうか?