Windows Forms - odczyt i zapis do pliku

0

Cześć wszystkim.
Na początek mam pytanie odnośnie odczytu z pliku pliku. Mam textBox1, w którym można wpisywać wieloliniowy tekst. Ogólnie moja apka to najprostszy edytor tekstu, naprawdę najprostszy. Mam tam OpenFileDialog oraz następująco oprogramowany button ten dialog obsługujący (przykład ze stron MSDN):

private: System::Void button5_Click(System::Object^  sender, System::EventArgs^  e) {
			  Stream^ myStream;
      OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;

      openFileDialog1->InitialDirectory = "c:\\";
      openFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
      openFileDialog1->FilterIndex = 2;
      openFileDialog1->RestoreDirectory = true;

      if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
      {
         if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
         {
            // Insert code to read the stream here.
            myStream->Close();
         }
      }
		 }

To wszystko działa, ale jest bezcelowe. Otwiera się jakiś plik i nic z nim nie robi. Jak to napisać, żeby otwierać jakiś plik tekstowy i żeby zawartość tego pliku była wstawiana w pole tekstowe textBox1?
Jak to wykonać dla zapisu, aby zawartość textBox1 była zapisywana do pliku tekstowego?

0
textBox1->Text = File::ReadAllText(openFileDialog1->FileName);
0

Wielkie dzięki Azarien. Jak zrobić coś podobnego dla zapisu ?

0

Zrobiłem tylko zapis do pliku txt zawartości textBox1 w tym samym folderze, co projekt:

StreamWriter^ plik = gcnew StreamWriter("plik.txt"); //otwieramy strumień to zapisu
plik->Write(textBox1->Text); 
plik->Close(); 

No ale to nie wykorzystuje dialogów... Czy ktoś wie, jak coś takiego zrobić z użyciem saveFileDialog ?

0

Wywal następujące wiersze:

         if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
            myStream->Close();
         if ( (myStream = saveFileDialog1->OpenFile()) != nullptr )
            myStream->Close();
0

Super, wielkie dzięki ;).

0

Mam jeszcze jedno pytanko:
czy gdzieś przy tych dialogach, jest konieczna jakaś kontrola "Focusa", czyli tego, kiedy dane okno jest aktywne, a kiedy niedostępne ? Co to w ogóle jest ten Focus i czy przy moich zastosowaniach dialogów trzeba się nim przejmować ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1