2017-12-14 11 views
0

に保存する方法このコードを使用して、HTMLエディタでHTMLページをC#で開くことができました。HTMLエディタのHTMLコンテンツをc#

private void openToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     using (OpenFileDialog ofd = new OpenFileDialog() { Multiselect = 
false, ValidateNames = true, Filter = "HTML|*.html" }) 


      if (ofd.ShowDialog() == DialogResult.OK) 
      { 
       textBox1.Text = ofd.FileName; 
       FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read); 
       webBrowser1.DocumentStream = fs; 

      } 
    } 

とも私は変更

private void saveToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     SaveFileDialog svf = new SaveFileDialog(); 
     svf.Filter = "Text Files (.html)|*.html"; 

     if (svf.ShowDialog() == DialogResult.OK) 
     { 
      System.IO.StreamWriter sw = new System.IO.StreamWriter(svf.FileName); 

      sw.WriteLine(webBrowser1); 
      sw.Close(); 
     } 
    } 

を保存するには、このコードを使用ししかし、唯一のラインが私のHTMLページに保存されているが、このメッセージです:System.Windows.Forms.WebBrowser。 HTMLページの内容を保存するにはどうすればよいですか?

System.IO.StreamWriter sw = new System.IO.StreamWriter(svf.FileName); webBrowser1.DocumentStream.CopyTo(sw.BaseStream); sw.Flush(); sw.Close();

をあなたが述べたように、暗黙的にToStringメソッドを呼び出す、直接ストリームにオブジェクトを書き込むしようとしているので、あなたが動作しない理由は次のとおりです。あなたが必要と感謝

+0

この行 'sw.WriteLine(webBrowser1)'は、現在取得中のコンテンツを提供する 'webBrowser1'の' ToString() 'メソッドを暗黙的に呼び出しています。 'webBrowser1'のdocumentStreamを書く必要があります。 –

答えて

1

は次のように動作するはずです() 方法。

+0

ありがとう、しかし私はまだエラーがあります – David

+0

CopyTo(sw):括弧の中の 'sw'のために私にこのエラーを与えました:Argument1:Conotから変換 'system.IO.StreamWriter TO System.IO.stream – David

+0

@David私の更新版で試してください:) – Jaxi

関連する問題