我是 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
我究竟做错了什么?
提前感谢您的帮助!