0

私は C++ を初めて使用し、Visual Studio で比較的野心的な Win32 アプリケーションに取り組んでいます。私が抱えている問題は、文字列から「書き込む」ときに、メイン ウィンドウのテキスト フィールドに文字ではなく数字が表示されることです。

ベクトルをリッチ テキスト ボックスに読み込んでいますが、テキスト ボックスに AA ではなく 6565 が表示されます。65 が「A」の文字コードであることは理解していますが、ウィンドウを文字を表示します。

これは、ベクターを作成するコードです。この部分をデバッグすると、データが正しく読み込まれることがわかります。このコード スニペットは、「ポートフォリオ」クラスの一部です。

vector<string> tickers;
string cell;
string line;

ifstream d ("file.csv"); //The file contents look like: AA,AAPL,BAC and so on

if (d.is_open()) {

    getline(d,line);
    stringstream line2(line);

    for (ci=0; ci<c; ci++) { //c is known and is the number of 'columns' in the file I am reading.
      getline(line2,cell,',');
      tickers.push_back(cell);
    }
}

リッチ テキスト ボックスの名前は「Results2」です。リッチ テキスト ボックスの Text プロパティを設定するコードは次のとおりです。

portfolio p;
int n = p.tickers.size();

for (int i=0; i<n; i++) {
    for (int j=0; j<p.tickers[i].size(); j++) {
        Results2->Text += p.tickers[i][j];
    }
    Results2->Text += "\n";
}

データが正常に取得されているため、「Results2->Text」ビットが正しいことはわかっています。問題は、私は次のようになることです:

6565 65658076

それ以外の:

AA AAPL

私は何を間違っていますか?

助けてくれてありがとう!

4

1 に答える 1