2010-08-08 6 views
0

Im utilisant des formulaires vC++. J'ai créé une zone de texte, im essayant d'obtenir la valeur dedans j'ai utilisé textBox1-> Text. Tout ce que j'essaie de faire est de créer un nom de fichier text.txt plutôt que d'écrire dans le fichier ce qui se trouve dans le textBox1. ici le codeConcepteur de formulaires vC++

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { 
      Help::ShowPopup(button1, textBox1->Text , Point(button1->Right,this->button1->Bottom));//works here 
      ofstream a_file("test.txt"); 
      a_file << textBox1->Text;//get error 
      a_file.close(); 
      if (!a_file.is_open()) 
       Help::ShowPopup(button1, "s" , Point(button1->Right,this->button1->Bottom)); 

      Application::Exit; 
     } 

l'erreur est cette erreur C2679: binaire '< <': aucun opérateur trouvé qui prend un opérande à droite de type 'System :: String ^' (ou il n'y a pas de conversion acceptable) merci d'avance rami

Répondre

1

Ne mélangez pas les types gérés et non gérés sauf si cela est absolument nécessaire. Remplacer non géré de flux avec StreamWriter géré:

 
System::IO::StreamWriter sw = gcnew System::IO::StreamWriter(L"test.txt"); 
sw->WriteLine(textBox1->Text); 
sw->Close(); 
+0

n'est-ce pas un code c pas un code C++? – Ramilol

+0

Ceci est C++/CLI, exactement comme le code que vous avez posté. –

+0

bien merci beaucoup il l'a résolu je viens d'ajouter un^où vous avez déclaré sw en ligne un merci! – Ramilol

Questions connexes