gpt4 book ai didi

c# - 文件流或网络客户端

转载 作者:行者123 更新时间:2023-11-30 16:53:58 24 4
gpt4 key购买 nike

我目前正在使用 Microsoft 的 WopiOffice Web App 技术生成一些预览,但我遇到了问题。抱歉我的英语不好,但我会尽量表达自己的意思。

所以!我通过下载文件内容并将其存储到 HttpContent 中来生成预览。首先,我对项目的 ~/App_Data/ 中的文件进行了尝试。我使用 FileStream 类读取它的内容,并通过使用此将其转换为 HttpContent:StreamContent(myFileStream)。所以,这是完美的工作!

但是,我需要我的项目来处理存储在只能从互联网访问的服务器上的文件(因此物理 URL 应该如下所示:http://myServer/res/file.pdf例如)。我不能在这里使用 FileStream 类,所以我这样做了:

byte[] tmp;
using (WebClient client = new WebClient())
{
client.Credentials = CredentialCache.DefaultNetworkCredentials;
tmp = client.DownloadData("http://myServer/res/file.pdf");
}
myHttpContent = new ByteArrayContent(tmp);

问题是这个小示例似乎可以正常工作,但之后不会生成预览,这是我更改的唯一一段代码。我在此处发布之前检查了一些内容,因此:我确实可以访问该文件并且可以阅读它。

所以,我的问题是,这是获取文件内容的好方法,它是否已过时,我应该如何尝试对其进行修补?

我希望我的帖子足够清楚,感谢阅读!

最佳答案

我认为你可以做到以下几点

MemoryStream ms;
using (WebClient client = new WebClient())
{
client.Credentials = CredentialCache.DefaultNetworkCredentials;
ms = new MemoryStream(client.DownloadData("http://myServer/res/file.pdf"));
}

然后使用内存流应该与您的文件流具有相同的行为。

关于c# - 文件流或网络客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30910897/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com