0

我有一个从 excel 文件创建的文件流。我需要阅读此流的内容并从中获取 excel 表。有什么想法我该怎么做?

注意:我必须在不使用任何第三方库的情况下执行此操作

WebRequest request = WebRequest.Create(new Uri("http://servername:1056/ExcelFiles/Myfile.xlsx", UriKind.Absolute));
request.UseDefaultCredentials = true;
WebResponse response = request.GetResponse();
Stream fs = response.GetResponseStream() as Stream;

这里我需要读取 fs 的内容,而不必将文件保存到本地系统/磁盘

4

2 回答 2

0

您可以使用 SpreadSheetDocument 从具有静态方法的流中读取数据

var doc = SpreadSheetDocument.Open(docName, true);

有关此链接的更多信息http://msdn.microsoft.com/en-us/library/ff478410

像记忆流一样阅读

WebClient wc = new WebClient();

byte[] fileArray = wc.DownloadData("url is inserted here");

MemoryStream ms = new MemoryStream(fileArray);
于 2013-01-29T10:00:04.613 回答
0

尝试这样的事情

WebClient webClient= new WebClient();
Stream stream = webClient.OpenRead("http://servername:1056/ExcelFiles/Myfile.xlsx");
  //StreamReader streamReader = new StreamReader(stream);
  //String content = streamReader.ReadToEnd();
// Read the Document using SpreadSheetDocument Method 
var ssDoc = SpreadSheetDocument.Open(stream, false);

SpreadsheetDocument.Open 方法(流,布尔值)

于 2013-01-29T09:36:32.620 回答