我正在使用:`private void get_stocks_data() { byte [] result; byte [] buffer = new byte [4096];下載並保存excel文件
WebRequest wr = WebRequest.Create("http://www.tase.co.il/TASE/Pages/ExcelExport.aspx?sn=he-IL_ds&enumTblType=AllSecurities&Columns=he-IL_Columns&Titles=he-IL_Titles&TblId=0&ExportType=1");
using (WebResponse response = wr.GetResponse())
{
using (Stream responseStream = response.GetResponseStream())
{
using (MemoryStream memoryStream = new MemoryStream())
{
int count = 0;
do
{
count = responseStream.Read(buffer, 0, buffer.Length);
memoryStream.Write(buffer, 0, count);
} while (count != 0);
result = memoryStream.ToArray();
write_data_to_excel(result);
}
}
}`
下載Excel文件,
而且這種方法來填補我的電腦上的文件:
private void write_data_to_excel(byte[] input)
{
StreamWriter str = new StreamWriter("stockdata.xls");
for (int i = 0; input.Length > i; i++)
{
str.WriteLine(input[i].ToString());
}
str.Close();
}
的結果是,我得到了很多的數字... 什麼我做錯了嗎?我下載的文件是Excel 2003版本,在我的電腦上我有2007 ... 謝謝。
好多了,那可行......但現在我發現我下載了錯誤的URL .. 。我正在下載的頁面上有一個按鈕,應該點擊他的按鈕,然後選擇excel 2003格式下載...那麼我應該給什麼網址?該網頁是在tase.co.il/TASE/Products/Stocks/ MarketData和excel文件是在點擊具有excel圖標的按鈕時給出的,然後選擇excel 2003(和下載開始)...我應該給什麼網址?謝謝。 – 2011-04-15 06:49:03
實際上Excel按鈕執行一個頁面'javascript:customWindowOpen('/ TASE/Pages/ExcelExport.aspx?sn = none&enumTblType = allShares&Columns = noneColumns&Titles = noneTitles&action = 1&SubAction = 0&GridId = 33&CurGuid = {727FE319-7530-460E-9444-E9FB85BCF378} &ExportType = 1','_blank','scrollbars = yes; toolbar = yes; menubar = yes; resizable = yes',800,450); return false;' 所以你應該調用'/TASE/Pages/ExcelExport.aspx '與上述所有參數一樣,但是每次當您要調用頁面時都必須查找參數(GridID和CurGuid)。 – EmersioN 2011-04-20 08:21:54