Я пытаюсь прочитать файл в своем приложении, и у меня появляется несколько ошибок, которые я до конца не понимаю.
C2227: слева от '-> Равные' должно указывать на класс / структуру / объединение / универсальный тип C3867: 'System :: String: ToString': нестандартный синтаксис;используйте '&', чтобы создать указатель на член
Вот код:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
OpenFileDialog^ open = gcnew OpenFileDialog();
open->InitialDirectory = "c:\\";
open->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
open->FilterIndex = 2;
open->RestoreDirectory = true;
if (open->ShowDialog->Equals(System::Windows::Forms::DialogResult::OK) )
{
textBox1->Text = open->FileName;
}
}
private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
ifstream inFile;
string time;
string name;
Shack shackPref;
pair<int, int> av;
string filename = textBox1->Text->ToString;
inFile.open(filename);
if (inFile.is_open()) {
cout << "File has been opened" << endl;
}
else {
cout << "NO FILE OPENED" << endl;
}
while (!inFile.eof()) {
}
Может кто-нибудь объяснить, почему open-> ShowDialog не попадает в класс / структуру / объединение/ общий тип?Как я могу изменить это, чтобы получить правильный ввод?Нужно ли создавать структуру, которая содержит эти данные, и если да, то '-> Равные' все еще сможет сравнивать ее с DialogResult?
Тот же вопрос касается попытки преобразовать имя файла в std: stringиз строкиКогда я пытаюсь трактовать Text как элемент textBox1, он говорит, что у него нет члена.Почему '-> ToString' не распознает 'Text' как участника?
Заранее благодарю за помощь.Я все еще довольно новичок в c ++, так что это стало для меня настоящим умом.