读取网址并获取csv文件

时间:2009-10-21 21:43:52

标签: c# browser csv parsing

我有一个URL,当我在浏览器中加载它时,它将其识别为csv文件并弹出excel“你想打开”。我想以编程方式执行此操作,因此我可以让winforms应用程序使用该URL并直接解析csv文件。

最快的方法是什么?


编辑:我尝试使用WebClient,我收到了以下错误:

“远程服务器返回错误:(500)内部服务器错误。”

4 个答案:

答案 0 :(得分:6)

我不明白为什么这样的东西不起作用(在C#中):

// Download the file to a specified path. Using the WebClient class we can download 
// files directly from a provided url, like in this case.

System.Net.WebClient client = new WebClient();
client.DownloadFile(url, csvPath);

网址是您的网站,其中包含csv文件,而csvPath是您希望实际文件的位置。

答案 1 :(得分:1)

如果您有WinForms应用,可以使用System.Net.WebClient将数据作为字符串读取。

它会将整个csv文件作为字符串读取,但您可以将其写出或随意解析。

答案 2 :(得分:0)

如果你想把东西放在一起我会建议使用脚本语言和一些bash。只需使用wget或类似的东西来获取文件和一些脚本语言来解析它。一旦你有了文件,你甚至可以用php来解析它,因为我知道php有以下功能非常好:http://php.net/manual/en/function.fgetcsv.php

我建议这样做,因为它更容易,这肯定会让你轻松地解析它虽然我不知道你想从那里做什么,但世界你的牡蛎。

答案 3 :(得分:0)

以下代码适用于我,但我正在运行Open Office。我还没有用Excel测试过它。 hacky位是将文件的本地副本重命名为* .xls,以便Windows默认启动Excel,如果将文件扩展名保留为CSV,Windows将默认启动记事本。

String url = "http://www.example.com/test.csv";
String localfile = "test.xls";

var client = new WebClient();
client.DownloadFile(url, localfile);

System.Diagnostics.Process.Start(localfile);