• 締切済み

テキストデータ 構造体 入出力

テキスト(何が入っているか分からない)データの内容を構造体に格納して、格納された構造体の内容を画面に表示するのは可能でしょうか? C言語でソフトはVCです。 宜しくお願いします。

noname#86836
noname#86836

みんなの回答

  • 1108435
  • ベストアンサー率43% (94/217)
回答No.3

構造体と言う意味をご存知ですか? テキストだったら、エディタかもし16進数も入るのであれば、それなりのエディタ(Hexエディタ)などでファイルを確認すればいいじゃないですか。「何が入っているのかわからない」のではなくて「何が入っているのか調べようともしない」だけではないですか。 HexエディタはVectorで無償で入手できます。 http://www.vector.co.jp/soft/win95/util/se079072.html

  • yama5140
  • ベストアンサー率54% (136/250)
回答No.2

(自分で調べることをせず、あくまでも、このコミュニティだけで解決しようとするなら) >テキスト(何が入っているか分からない)データの内容を構造体に格納して、・・ ☆順番として、「何が入っているか」を、この「[技術者向] コンピューター」以外で、予想・占ってもらうことです。  その時、生年(月日)、動機などを詳しく述べるとより真実に近い、回答が得られるかもしれません(血液型、星座は不要かもしれません)。  次に、このカテゴリで「構造体って何?」と質問します。理解できるまで、新たな質問は控えて下さい。  同種の連続する質問はルール違反で、削除されることもありますので気をつけてください。 (テキストデータをエディタなどで覗いちゃうと、少なくとも「夢」が消えて・・) ☆「何が入っているか」「構造体って何?」が判明?し、やっと「構造体の設計」が可能となります。 ------------------------------------------------------ (アドバイス) 結論:不可能です。  何が入っているか分からない → 構造体を設計できない → ソースができない  → コンパイルできない → 実行できない → 「格納」できない → 「表示」できない ・質問者様は、後ろの2つを質問されています。 ・まず、「何が入っているか」を確認すべきです(→課題提出者)。 ・次に、「構造体」って、どういうものか調べるべきです。  http://www.cc.kyoto-su.ac.jp/~yamada/pB/struct.html  http://www9.plala.or.jp/sgwr-t/c/sec15.html  http://www005.upp.so-net.ne.jp/h-masuda/cl/CAlgo/list02.html リスト構造体  http://www.geocities.jp/ky_webid/algorithm/010.html    ・    ・  たくさん検索できますよ。 前回の質問 http://okwave.jp/qa5038471.html >ちょっと緊急です…  2件の質問・補足を見る限り、残念ですが、「構造体って何?」で足踏み、となると思います。 ------------------------------------------------------ (回答) >ちょっと緊急です… 「プログラムの書き方がわかりません」のような者に、「何が入っているか分からない」データの処理を問うのは、「問題を出す側に問題があると思います」ので、「ちょっと緊急です」と、受け身になってはいけません。  無視すればよろしいかと・・。  前回の質問 http://okwave.jp/qa5038471.html No.2 補足歪曲?引用 ☆歪曲の真意をつかみ、発憤しなきゃ男じゃない!!!

回答No.1

> テキスト(何が入っているか分からない)データの内容を構造体に格納して 何言ってんだかわかりません。

関連するQ&A

  • テキストデータと構造体。

    テキストデータを構造体に代入し、キャッシュの仕組みの様に見せるプログラムをC言語で作れますか? 教えて下さい。ちょっと緊急です…

  • ファイルから構造体へデータを格納(動的メモリ割り当て)

    C言語の勉強をしいております。 typedef struct address { char names[32]; /* 名前 */ char tels[32]; /* 電話番号 */ struct address *prev; /* 前のリスト */ struct address *next; /* 次のリスト */ }Address; という構造体へ、ファイルから読み込んだテキストデータ(名前と電話番号がTABで区切られている)を格納したいのですが、配列ではなく、動的にメモリを確保しながら格納する方法を教えていただけないでしょうか? 処理の流れとしては、 ・1つめの構造体の*prevにはnullを入れておく。 ・1つめの構造体へファイルの1件目のデータを格納する。 ・ファイルのデータがまだある場合には、malloc関数を使ってメモリを確保し、malloc関数からの戻り値を1つめの構造体の*nextへ格納する。 ・構造体へ2件目のデータを格納する。 このような感じだろうという程度しか分からず、ソースも書けずにいます・・・。 配列を使用したサンプルはあるんですが、動的に処理を行う方法を教えていただけないでしょうか? よろしくお願いいたします。

  • C言語で、テキストファイルに下記の構造体データのバッファを保存し、

    C言語で、テキストファイルに下記の構造体データのバッファを保存し、 PHPで構造体データの中身を取ることは可能でしょうか。 struct ParamData{ signed short paramA; signed short paramB; signed short paramC; signed short paramD; signed short paramE; signed short paramF; signed short paramG; }; C言語では、 ParamData* params = (ParamData*)readData; で取得できたのですが・・・。 宜しくお願いします。

  • XML構造体に格納したデータの表示件数制限

    プログラミング初心者です。表示件数をブラウザのデータ表示一覧画面で指定して表示する方法、考え方を教えていただきたいです。 データベースから取得してきた値をXML構造体に格納し、html(XSLT)ページで データ一覧を表示しています。 ・実現したいこと データ表示一覧ページで表示件数を指定して表示したいのですが、例えば500件のデータを取得して100件を一覧ページで表示し次のボタンをクリックすると101件から200件、また次のボタンを押すと201件から300件、戻るボタンを押すと101件から200件を表示したいです。 教えていただきたいのは (1)XML構造体に500件すべて格納してから表示件数を制限できるのか (100件を表示した場合残り400件のデータはどうやって保持するのか) (2)XML構造体にデータを入れる前に、入れる件数を制限してから  表示するのがよいのか(SQLで件数を指定してそれからXMLに格納する) よろしくお願いいたします。

    • 締切済み
    • XML
  • 一行データから構造体・配列への格納処理について

    初めて投稿します。 ▲実現したい処理内容 1)ファイルを読み込む。 2)読み込んだデータを独自定義した構造体データ配列に格納する。 3)格納した構造体データをパラメータに引き渡す。 ▲ファイルデータについて ・連続した文字列(カンマなどの区切りはなし) ・一行のみ --------10--------20--------30 abcdefgあいうえ123456789012 ▲条件 構造体を使う以外になし ▲状況 今のところ、自分でわかっているのは >2)読み込んだデータを独自定義した構造体データ配列に格納する。 の処理で、 ************************************************************** <最終的に渡すパラメータの型やサイズは決まっているので、 決まった文字サイズでデータから文字を切り出し、操作して パラメータへ渡す>処理で実現できる ************************************************************** なんですが、 構造体を使うロジックで実現しようとし、 関数は freadが適当であるということをアドバイスされましたが、 リファレンスの内容が理解できず困っています。 ファイルを開いて、 char buffer[256]; fgets(buffer, sizeof(buffer), fp); でbufferに文字列を格納する部分までは実現&理解できております。 ご教示いただければ幸いです。 よろしくお願い致します。

  • テキストデータから構造体にデータを保存する方法

    C言語初心者です。 大きなテキストデータ(730MB)からデータを取得して、構造体に保存し表示するというプログラムを作成しています。テキストのサイズが大きいため構造体のサイズを400000とし、 残りをftellとfseekを使用してファイルポインタをずらして全データを順次読み込んで表示しようとしているのですが、実行すると400000行目以降(最初の構造体のMAX時点)がうまく読み込めません。 詳しい方がいましたら、ご教授願います。 #define MAX_SIZE 400000 char filename[] = ″test.txt"; struct ALL_DATA{ char cmd[10]; int addr; int bsize; }; for (int lp = 0; lp < 100; lp++){ FILE *fp; struct ALL_DATA ADATA[MAX_SIZE]; // 構造体配列の宣言 if (lp > 0){ fseek(fp, LP, SEEK_SET); } if ((fp = fopen(filename, "r")) == NULL){ printf("%s open error !\n", filename); exit(1); } for (fc = 0; fc < MAX_SIZE; fc++) { if (feof(fp)){ break; } else{ fscanf(fp, "%s %d %d\n", ADATA[fc].cmd, &ADATA[fc].addr, &ADATA[fc].bsize); } } LP = ftell(fp); //現在のFPの取得 printf("********** FP-> %ld *********\n", LP); fclose(fp); while (i < MAX_SIZE){ if (loopcnt == 0){ printf("ADATA[i].cmd -> %s, ADATA[i].addr -> %d, ADATA[i].bsize -> %s\n",ADATA[i].cmd, ADATA[i].addr, ADATA[i].bsize); // i++; } } 上記のような形で作成しています(一部抜粋)。 読み込むテキストデータは testA 123456 20 testA 23415 2 testB 12114567 678 のように「文字列 スペース 数字 スペース 数字」と並んでおり 値はランダムになっています。 初めて質問するため、わかりにくい記述があるかと思いますが、よろしくお願いします。

  • Javaには、構造体はないんですか?

     C言語の構造体みたいなのはないんですか? 野球のデータを扱っているのですが、構造体がないのでできません。 打率の順位をソートしたいのですが、Cでは構造体でソートすれば選手名まで全部ソートできたのですが。。。 Javaでは、いちいち選手名、打率などの配列を作っているのですが、打率をソートしてから選手名と一緒に表示しようとしても打率の配列だけ、ソートしてあり選手名の配列と打率の配列があいません。 要するに、打率の配列はソートし、選手の配列はデータを入力したときのままなので、順番が違っているのです。 うまい方法を教えてください。初歩的な質問でごめんなさい。

    • ベストアンサー
    • Java
  • テキストデータとは

    コンピュータの世界で、実務上一般的にテキストデータと言われるのは 、例えば、エクセルで言えば表示されているものつまり最も表層状に現れている文字のことでよろしいのでしょうか?これが、例えばC言語の プログラム作成なら、エディタ上に表示されている文字列等という認識になるのでしょうか?変な質問かも知れませんが、一般的にオフィス上でテキストデータに変換した場合あくまでそのソフトが処理する文字列の集まりという認識でよろしいのでしょうか。

  • 構造体から他の構造体への代入

    現在C言語で簡単なプログラミングを書いているのですが、 構造体(1)(下記参照)から、構造体(2)(下記参照)への代入の方法がわからず悩んでいます。もしよければ手を貸してください!! 標準関数などがないということはわかったので、 地道に代入を行いたいです。 イメージ・・・(data[n].b = moji[n].d;) (1)struct list_kouzou{ int a; char b[30]; char c[8]; }data[100]; (2)struct list_tai{ char d[30]; }moji[15];

  • 構造体の静的な初期化

    構造体の静的な初期化で、初期化が書かれていないメンバーは、 どうなるのでしょうか。。? たとえば・・・ // 構造体の宣言 strcut MY_STRUCT {    int data1 ;    int data2 ;    int data3 ;    int data4 ; } ; // 変数宣言&初期化 static strcut MY_STRUCT st = {    .data1 = 100,    .data3 = 300 } ; ネットで調べると、 初期化で指示されていないメンバーは0に初期化される、 という記述も一つだけ見つけたのですが・・・これはC言語(C99)の仕様でしょうか? それともコンパイラ依存の仕様でしょうか?

専門家に質問してみよう