怎么读取别的网页上面的新闻到自己网页上面(asp。net、) 要实现一个读取别人网页上面的新闻,然后在自己的网页上面显示 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 WebClient myWebClient = new WebClient();byte[] webDada = myWebClient.DownloadData("http://web.idccdns.cn/key.htm");string keywords = Encoding.Default.GetString(webDada); 用WebRequest, WebClient一向B4这种采集做法。 WebClient提供发送数据以及从URL标识的资源获得数据的常用方法WebClient使用WebRequest类提供访问Internet资源的方式WebClient以更高的级别封装WebRequest类,并提取了大部分的细节WebClient方法OpenWrite():发送流UploadData():发送字节数组,并在响应时返回字节数组OpenFile():发送本地文件UploadValues():发送名值集合DownLoadData():下载数据并返回字节数组DownLoadFile():把得到数据下载给本地文件OpenRead():把从资源得到的数据返回为流例1. WebClient类使用前台: 输入URL:<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox> <asp:Button ID="btnGetData" runat="server" Text="得到数据" OnClick="btnGetData_Click" /><br /> <asp:TextBox ID="TextBox4" runat="server" Height="117px" TextMode="MultiLine" Width="312px"></asp:TextBox><br /> 要下载的文件地址URL:<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox> <asp:Button ID="btnDownLoad" runat="server" Text="下载文件" OnClick="btnDownLoad_Click" />后台:using System.Net;using System.IO;using System.Net.Sockets;protected void btnGetData_Click(object sender, EventArgs e) { WebClient client = new WebClient(); Stream response = client.OpenRead(TextBox3.Text); TextBox4.Text = ""; int nByteData; do { nByteData = response.ReadByte(); if (nByteData > 0) TextBox4.Text += Convert.ToChar(nByteData); }while (nByteData > 0); response.Close(); } protected void btnDownLoad_Click(object sender, EventArgs e) { WebClient client = new WebClient(); string strDes = "e:\\"+Path.GetFileName(TextBox5.Text); client.DownloadFile(TextBox5.Text,strDes); Response.Write("目标地址为:"+strDes);}*WebClient以更高的封装方式封闭了WebRequest.一. 使用WebRequest和WebResponse 可以组合WebRequest和WebResponse类,从Internet资源请求数据,然后读取响应例2. WebRequest与WebResponse类使用实例前台: URL地址:<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox> <asp:Button ID="btnGet" runat="server" Text="获取数据" OnClick="btnGet_Click" /><br /> <asp:TextBox ID="TextBox1" runat="server" Height="133px" TextMode="MultiLine" Width="294px"></asp:TextBox>后台:using System.Net;using System.IO;using System.Net.Sockets;using System.Text;protected void btnGet_Click(object sender, EventArgs e) { WebRequest req = WebRequest.Create(TextBox6.Text); WebResponse res = req.GetResponse(); Stream ReceiveStream = res.GetResponseStream(); Encoding ecode = Encoding.GetEncoding("utf-8"); StreamReader sr = new StreamReader(ReceiveStream,ecode); Char[] ReadBuffer = new Char[256]; int nCount = sr.Read(ReadBuffer,0,256); while (nCount > 0) { string str = new string(ReadBuffer,0,nCount); TextBox1.Text += str; nCount = sr.Read(ReadBuffer,0,256); }} protected string cutstr(string str, string bs, string es) { Match tempstr = Regex.Match(str, "(" + bs + ").+?(" + es + ")"); string temp2 = tempstr.ToString(); if (temp2.Length == 0) { return "采集失败!!!"; } else { return temp2.Substring(bs.Length, temp2.Length - bs.Length - es.Length); } } 这是我的方法 但是不行 可以帮我看看吗 这问题我遇到很多!但是这种该如何处理我还是没弄过 寻找一个ASP.NET的整站系统,具体要求见内 如何在asp.net datagrid 能否对指定列不允许修改 急!vs2005安装问题,请朋友们帮忙 网站里突然多出几个aspx.bak文件,不知道病毒木马,还是被黑了! 关于Forms认证配置Web.Config文件的一此疑惑! Dataset更新数据库中的数据出错(急哦) 为什么treeview控件加上节点后横向排列??? 该如何纵向排列 紧急求救一个问题请班主和各位老大快施援手,谢了! 水晶报表 遇到一点棘手的问题,请各位帮忙·· 【300分】呼叫过客等正则高手
WebClient myWebClient = new WebClient();
byte[] webDada = myWebClient.DownloadData("http://web.idccdns.cn/key.htm");
string keywords = Encoding.Default.GetString(webDada);
一向B4这种采集做法。
WebClient使用WebRequest类提供访问Internet资源的方式
WebClient以更高的级别封装WebRequest类,并提取了大部分的细节
WebClient方法
OpenWrite():发送流
UploadData():发送字节数组,并在响应时返回字节数组
OpenFile():发送本地文件
UploadValues():发送名值集合
DownLoadData():下载数据并返回字节数组
DownLoadFile():把得到数据下载给本地文件
OpenRead():把从资源得到的数据返回为流
例1. WebClient类使用
前台:
输入URL:<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:Button ID="btnGetData" runat="server" Text="得到数据" OnClick="btnGetData_Click" /><br />
<asp:TextBox ID="TextBox4" runat="server" Height="117px" TextMode="MultiLine" Width="312px"></asp:TextBox><br />
要下载的文件地址URL:<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:Button ID="btnDownLoad" runat="server" Text="下载文件" OnClick="btnDownLoad_Click" />
后台:
using System.Net;
using System.IO;
using System.Net.Sockets;
protected void btnGetData_Click(object sender, EventArgs e)
{
WebClient client = new WebClient();
Stream response = client.OpenRead(TextBox3.Text);
TextBox4.Text = "";
int nByteData;
do
{
nByteData = response.ReadByte();
if (nByteData > 0)
TextBox4.Text += Convert.ToChar(nByteData);
}while (nByteData > 0);
response.Close();
}
protected void btnDownLoad_Click(object sender, EventArgs e)
{
WebClient client = new WebClient();
string strDes = "e:\\"+Path.GetFileName(TextBox5.Text);
client.DownloadFile(TextBox5.Text,strDes);
Response.Write("目标地址为:"+strDes);
}
*WebClient以更高的封装方式封闭了WebRequest.
一. 使用WebRequest和WebResponse
可以组合WebRequest和WebResponse类,从Internet资源请求数据,然后读取响应
例2. WebRequest与WebResponse类使用实例
前台:
URL地址:<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox> <asp:Button ID="btnGet"
runat="server" Text="获取数据" OnClick="btnGet_Click" /><br />
<asp:TextBox ID="TextBox1" runat="server" Height="133px" TextMode="MultiLine" Width="294px"></asp:TextBox>
后台:
using System.Net;
using System.IO;
using System.Net.Sockets;
using System.Text;
protected void btnGet_Click(object sender, EventArgs e)
{
WebRequest req = WebRequest.Create(TextBox6.Text);
WebResponse res = req.GetResponse();
Stream ReceiveStream = res.GetResponseStream();
Encoding ecode = Encoding.GetEncoding("utf-8");
StreamReader sr = new StreamReader(ReceiveStream,ecode);
Char[] ReadBuffer = new Char[256];
int nCount = sr.Read(ReadBuffer,0,256);
while (nCount > 0)
{
string str = new string(ReadBuffer,0,nCount);
TextBox1.Text += str;
nCount = sr.Read(ReadBuffer,0,256);
}
}
{
Match tempstr = Regex.Match(str, "(" + bs + ").+?(" + es + ")"); string temp2 = tempstr.ToString();
if (temp2.Length == 0)
{
return "采集失败!!!";
}
else
{
return temp2.Substring(bs.Length, temp2.Length - bs.Length - es.Length); } } 这是我的方法 但是不行 可以帮我看看吗