• ベストアンサー

文字列空白毎に区切りをstring型で格納

現在FeliCaを使ったプログラムを作っているのですが、 FeliCaから読み込んだデータをstring型で格納したいのですが、 方法がわかりません。  例1「012 34567 89]    例2「01 2345678 9」   a=012           a=01   b=34567          b=2345678   c=89            c=9 というように空白で区切った文字列をsring型で格納したいのです。 なにか良い方法はないでしょうか? 環境はVisualStudio.NET2003です

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

  • ベストアンサー
  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

改行やタブなどを含む「空白類文字」を区切りと考えてよいのであれば、std::stringstreamなどから>>演算子で抽出していけばよいと思います。空白文字だけを区切り文字にしたいのであれば、getlineを使うなどしてください。

shu0325
質問者

補足

すいません。調べてみたのですが、いまいちわかりません・・・。 簡単な例で良いのでソース等ありませんか?

その他の回答 (1)

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

マネージド環境なんですか? ... いわゆる.NETアプリケーション おしゃられているString型というのがSystem.Stringクラスであるなら Splitメソッドが使えると思いますよ ... マネージドでない つまりネイティブアプリなら スタンダードライブラリなどを使ってみてはいかがでしょうと No1氏が回答しているわけです VS.NET2003付属の MSDNの 『C++ Language Reference』ms-help://MS.MSDNQTR.2003FEB.1041/vclang/html/vcrefCPlusPlusLanguageReference.htm を参照してみてください ... ただし英文です...

関連するQ&A

  • 配列のサイズを動的に指定したい。

    現在FeliCaを使ったプログラムを作っているのですが、 FeliCaから読み込んだデータを各配列にサイズぴったりで格納したいんですが、読み込むデータによって配列のサイズが違うため、あらかじめ配列のサイズを指定しておくことができません。  例1「012 34567 89]    例2「01 2345678 9」   a[3]=012           a[2]=01   b[5]=34567          b[7]=2345678   c[2]=89            c[1]=9 というように空白で区切った文字列を各配列に格納したいのです。 なにか良い方法はないでしょうか? ソフトはVisualStudio6.0を使用しています。

  • 空白を含んだ文字列がうまく格納(表示)できない

    こんにちわ。 空白(スペース)の入った文字列の格納(表示)について質問させてください。 以下のプログラムを実行すると、空白の含む文字列がうまく表示されません。 例えば、 in the worldと入力しても、inしか格納されていないみたいです。それはなぜでしょうか? また、どうすればそれを格納、表示させることができるのでしょうか?教えてください。よろしくお願いいたします。 #include <stdio.h> #include <string.h> main() { char buf[BUFSIZ]; char moji[31]; int i; printf("Input string: "); fgets(buf, sizeof(buf), stdin); moji[31] = '?0'; sscanf(buf, "%s", moji); i = 0; while (moji[i] != '?0') { printf("%c",moji[i]); i = i + 1; } printf("?n"); printf("%d letters?n", i); } 【実行例】 csx01:~> gcc prog.c csx01:~> a.out Input string: in the world in 2 letters

  • javaの文字列検索について

    javaの文字列検索について教えて頂きたいです。 例で説明します。 String a = "a bc dd ef"; String b = "abcd"; String c = "xxx"; 上記のよう、aは空白がはいている文字列です。 bの内容をaの中に存在しているか(空白無視)を検索して、存在している場合はあたりの部分をcに置換する処理を作りたいです。 上記の例の場合、期待の結果は"xxxd ef"になります。 空白無視して検索、置換する方法が分からないので、教えて頂いてよろしいですか?

    • ベストアンサー
    • Java
  • 入力された文字列を一文字ずつ配列に格納する方法

    例えばABCって文字列が入力されたら配列に data[0]="ABC" と格納するのではなく data[0]="A" data[1]="B" data[2]="C" と格納するにはどう書けばいいのでしょうか?

  • 文字型配列に格納した空白の切捨て

    Cでやり方がわからないことがあるのでご質問があります。 文字型配列、例えばchar buf[128]にfgetsなどで、文字列を格納したとします(例えば"abc defghi ")。 この場合、最後に続く空白がその後の作業で邪魔なので新しい文字型配列もしくはポインタに、2つ以上空白が続いた場合は、最後の文字までで、以下の空白は切り捨てた状態("abc defghi")で格納したいのですが方法が思い浮かばず困っています。 よい方法があればお教えください。 よろしくお願いします。

  • 文字列を配列に…。

    VBはまだ始めたばかりで本当に初歩的なことかもしれませんが分かる方がおられたら是非教えて下さい。 text1.textから取り込んだ文字列を”一文字ずつ”(Dim a(100) as stringで宣言した)配列に格納したいのですがどうしたらいいのでしょうか?? <例>text1.textに"abc"と入力しcommandbuttonを押すとa(0)に"a"がa(1)に"b"がa(2)に"c"が格納されるといったかんじです。 ちなみに今私がしたいのはtext1.textに、ある文字列を入れその文字列を文字コードに変換しそれを一文字分ずつ+1してまたそのコードを文字に直しtext2.textに出力するというものです(ようは簡単な暗号化ですね)。 私はAscとChrコマンドを利用して1文字ずつコードをずらしていこうと思っているのですが、他に良い方法などあるのでしょうか?? 本当に初心者でどのようにしらたよいのか分かりません…。 どなたか分かりやすく教えていただけませんでしょうか?? お願いします。

  • Excelで特定の列の空白を埋める方法

    エクセルで次のようなことは可能でしょうか? 昨日も同じような質問をいたしましたが、よろしくお願いします。 A列に次のように入力されているとします。 (昨日、質問で文字列にa,b,cを付け加える方法を教えていただきましたが、以下のものは一つずつ入力してあるとします。) 001a 001b 空白 空白 002a 空白 空白 空白 003a 空白 空白 ここの空白を 001a 001b 空白 → 001c 空白 → 001d 002a 空白 → 002b 空白 → 002c 空白 → 002d 003a 空白 → 003b 空白 → 003c とする方法はないでしょうか?(千行くらいを自動的に) あとこれに関連して別の質問ですが、 ある列の001a, 001bなどのアルファベットのみ削除(はずす)して 001,002だけの数字にする方法も教えていただけないでしょうか? よろしくお願いします。

  • ストリング文字列をDocumentオブジェクトに格納したい

    文字列として受け取ったxmlをDocumentオブジェクトに格納したいと考えて DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(ファイルパス); とすればファイルを取得してDocumentオブジェクトに入れることはできたのですが、ファイルパスではなくString文字列としてxmlを受け取った場合、どのようにすればDocumentオブジェクトに格納できるのかわかりません。 どのようにすればよろしいのでしょうか?

    • ベストアンサー
    • Java
  • stringオブジェクト

    あるテキストの問題に 「STRINGオブジェクトはいくつ作成されますか? String a,b,c; a="1234"; b=a; c=a+b; 」 というのがあったんですが、答えは2個でaとb。 cはストリング文字列だから、という答えでした・・・ えーーー?!? とびっくりしてしまいました。 なぜなら、"1234"というのも文字列だと認識していたからです。 StringオブジェクトとString文字列の境目は何ですか?

    • ベストアンサー
    • Java
  • VB2010 変数に格納する文字列を増やす

    単純なことなのですが、、、どうしても方法が思い浮かびません。 下記のプログラムでは2735回変数にDataGridの値を格納 していますが、本来行いたい処理は Dataの中に2735回出た結果を文字列として連結したいです。 (たとえば..1回目でA 2回目でBと出た場合、DataにAB) 方法をご教授下さい。 For Row=0 To 2734 Data=Me.DataGridView1(CC,Row).Value Next