• ベストアンサー

テキストを一文字以上ずつ読み込みたい。

通常テキストを一文字ずつ読み込む時って cin.get(c)とか、やりますよね? でも、二文字ずつ読み込む時ってどうやるんですか? そもそもできるんでしょうか? もしできないとしたら、それに相当する書き方とかあるんでしょうか?

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

  • ベストアンサー
回答No.1

iostream(ていうかC++)はよく解らないのですが... "stdio.h"に定義されているfgets()関数を使えばいいのではないでしょうか。 fgets( char* 読込先の文字配列, int 読む文字数+1, FILE* 読み込むファイルポインタ); です。 以下は使用例です。 #include <stdio.h> int main(){  char buf[5];  FILE* fp;  if((fp=fopen("C:\\aaaa.txt","ra"))==NULL){   printf("ファイルのオープンに失敗.\n");   return 0;  }  fgets(buf, 3, fp);  printf("%s\n", buf);  fclose(fp);  return 0; } fopen関数でファイルのファイルポインタを作って fgets()で二文字読み、表示してから fclose関数でファイルポインタを無効にします。 配列を知らないって場合はちょっときついかもしれませんが... ま、その際は補足要求をどうぞ。

その他の回答 (1)

  • itohh
  • ベストアンサー率45% (210/459)
回答No.2

こんにちは。itohhといいます。 iostreamの場合、 cin.read(pch, 2); とすれば、良いのでは。

関連するQ&A

  • cin.get(c)について

    テキストを一文字読み込むときは、cin.get(c) と、やりますが、二文字ずつ読み込む方法が分かりません。 cin.read(pch,2)とやればいいという事らしいんですが、これもよく分かりません。 どなたか教えてください。

  • 改行文字について

    #include<iostream> using namespace std; int main(void) { char c; while (cin.get(c)) if (c == '\n') cout << "[RET]\n"; else cout << c; return(0); } これのif (c == '\n')の改行文字と等しいとは何のことを指すのでしょうか? よろしくお願いします。

  • テキストファイルから文字を探したい

     最近よく2ch等を見るのですが、1000になってしまったレスは非常に文字が多く、特定の言葉を探したい時などとても苦労します。  例えば、自分の好きな映画(ジュブナイルとか)について話しているレスを探す時にも相当時間がかかり、途中で目が疲れてしまいます。  テキスト(.txt)ファイルにして、自分の知りたい単語がどの位置にあるのかを知りたい時に一発で探せるようなソフトやツール等はありませんでしょうか? (自分でも文字検出という様な事を書いてあるフリーソフトを落として試してみたのですが、まるで機能しなかったので。)

  • 入力に出現する数字文字をカウントするプログラム

    こんにちは、毎度お世話になります。 #include<iostream> using namespace std; int main(void){ char c; int cnt[10] = {0}; while(cin.get(c)){ if(c >= '0' && c <= '9') cnt[c - '0']++; } for (int = 0; i < 10; i++) cout << i << "の出現回数:" << cnt[i] << '\n'; return(0); } [/code] ここで質問なんですが、このプログラムの中で数字文字をカウントしているのはどこでしょうか? そして while(cin.get(c)){ if(c >= '0' && c <= '9') cnt[c - '0']++; } ここの部分が何を表しているのか解りません。 よろしくお願いします。

  • jQueryでテキストファイルを読むには?

    jQueryでテキストファイルを読みたいです。 こちら(https://ghweb.info/post-2976.html)などを参考に色々試しましたが読めませんでした。 エラーは出ていません。 試したのは$.getと$.ajaxです。 テキストファイルは文字コードutf-8、bom無しです。 そもそもjQueryでテキストファイルは読めるのでしょうか?

  • 入力文字数がでません。

    C++です。以下を実行したのですが、実行結果に改行数は出るが文字数がでません。お願いします。 #include <iostream.h> int main(void) { char c; int ccount = 0; int ncount = 0; while (cin.get(c)) { ccount++; if (c == '\n') ncount++; } cout << "文字数=" << ccount << '\n'; cout << "改行数=" << ncount << '\n'; return (0); }

  • 文字に代替テキストは可能ですか?

    ホームページ内に、表組で作成したカレンダーを設置したのですが、カーソルを数字(日にち)の上に移動したときに、「○○の日」と代替テキストの様に表示させたいと考えてます。通常は画像のときに代替テキストを使用するのですが、文字などにも可能なのでしょうか?

    • ベストアンサー
    • HTML
  • 変数に256文字以上のテキストを格納したい

    お世話になります。 MS-SQL2000サーバーから、MS-ACCESS-VBA上でDAOにてレコードセットを取得、あるフィールドのValueをテキストファイルに書き出したい という処理を行っております。 このあるフィールドがテキスト(Verchar)なのですが Valueが255文字を超えている場合、変数に入れた時点で256文字目以降が 文字化けしてしまいます。 256文字目以降も変数に入れてテキストファイルに書き出したいのですが どのようにすれば実現できますでしょうか? Viewをつくり複数フィールドに分けて(255文字づつ)出力するなども 考えたのですが、どうにもスマートでなく・・・・ どなたか良い考え・経験をお持ちの方、アドバイスお願いします。

  • AcadRemocon「属性文字を通常のテキストに」

    AutoCAD2000iを使用していて、複数の図面ファイル(dwg)の中に含まれる、「属性定義文字」を通常のテキストに変換したく、いろいろ調べたところ、AcadRemoconでなんとかなりそうなのですが、AcadRemoconの製作者kju様の掲示板は閉鎖している様子・・・。 ベクターにて有料で掲示板ログが販売されているようですが、ほしいVBSはこの「属性文字を通常のテキストに」だけ・・・。 どなたか属性文字を通常のテキストに変換するVBSを制作できないでしょうか? よろしくお願いいたします。

  • VBAでホームページからコピーしてエクセルに入力した文字をテキスト文字に変換するコマンドはありますか?

    ホームページに書いてある文字をコピーしまして、エクセルにテキスト文字として貼り付けたいのですが、通常ですと、「コピー」「形式を選択して貼り付け」「テキスト」と非常に面倒です。「コピー」から「貼り付け」した時に、マクロで自動的にテキスト文字に変換出来る方法はありますでしょうか? お手数をおかけします。 よろしくお願い致します。

専門家に質問してみよう