私は 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
私は何を間違っていますか?
助けてくれてありがとう!