如何在.net中用c#实现 将网页内容自动另存为"XXX.html",就是将 浏览器中的另存为变为程序中自动执行axWebBrowser1.ExecWB(SHDocVw.OLECMDID.OLECMDID_SAVEAS,SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER,ref outPut,ref outPut);能不能够不弹出另存为的对话框?
解决方案 »
- C# Winform “GDI+发生一般性错误”异常
- 一个随机分配的问题,请求高效的算法。
- 求dotnettools workflow 源代码
- vs.net在调试dll(com+)时为何跟踪不进去?
- C#,Winform,TreeView中结点选中的问题,急!!
- 请教如何在C#中利用P/invoke调用以下C++代码.
- “System.Data.SqlClient.SqlCommand”并不包含CreateCommand对象,我现在急死了,完不成项目就去跳河去了,大家帮我啊!
- InstallShield中如何实现安装时 覆盖旧版本?
- gridview控件记录总数的问题
- 关于文件读写的问题!
- 谁有佳能SDK C#语言开发包
- 如何打印屏幕指定区域?
在.net2.0中增加了
WebBrowser.DocumentText 属性
WebBrowser.DocumentStream 属性
它们都能用来读取网页内容
/// 刷新下载信息
/// </summary>
/// <param name="current">当前页码</param>
private void refreshDownloadInfo(long current)
{
lb_Info.Text = "";
if (current != -1)
{
lb_Info.Text = String.Format("正在下载{0}页...", current);
}
else
{
lb_Info.Text = "下载完成!";
}
} /// <summary>
/// 打开指定页面
/// </summary>
/// <param name="URL">页面URL</param>
private void openPage(string URL)
{
System.Object nullObject = 0 ;
string str = "" ;
System.Object nullObjStr = str ;
Cursor.Current = Cursors.WaitCursor ;
WB_Main.Navigate(URL , ref nullObject , ref nullObjStr , ref nullObjStr , ref nullObjStr ) ;
Cursor.Current = Cursors.Default ;
} /// <summary>
/// 获取指定页面内容
/// </summary>
/// <param name="URL">URL</param>
/// <returns>页面内容</returns>
private string GetAPageCode(string URL)
{
Application.DoEvents();
openPage(URL);
Application.DoEvents();
while (WB_Main.ReadyState != SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE)
{
Application.DoEvents();
} mshtml.IHTMLDocument3 idoc = (mshtml.IHTMLDocument3)WB_Main.Document;
return idoc.documentElement.innerText;
} /// <summary>
/// 保存指定页面的内容到文本文件
/// </summary>
/// <param name="URL">URL</param>
/// <param name="FileName">文本文件名</param>
private void SaveAPage(string URL, string FileName)
{ string str = GetAPageCode(URL); try
{
//建立文件流
FileStream fs = new FileStream(FileName,FileMode.OpenOrCreate, FileAccess.ReadWrite);
byte[] b = System.Text.Encoding.Default.GetBytes(str);
fs.Write(b, 0, b.Length);
fs.Close();
}
catch(Exception e)
{
MessageBox.Show("Error: As File Saveing. \n" + e.Message);
}
}
不过无法保存图片