如何从网络服务器将文件保存在 wp7 的应用程序沙箱中?

发布于 2024-11-28 23:12:40 字数 64 浏览 0 评论 0原文

在我的应用程序中,我必须通过 http 协议从网络服务器保存文本文件和二进制文件。有人可以给我任何提示如何继续吗?

In my application I have to save text file as well as binary files from a webserver by http protocol. Could somebody give me any hints how to proceed?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

染火枫林 2024-12-05 23:12:40

您可以下载文件并将其复制到独立存储。

像这样的东西...

        private void DownloadFiles()
    {
        var wc = new WebClient();
        wc.OpenReadCompleted += WcOpenReadCompleted;
        wc.OpenReadAsync(new Uri("http://myserver/myfile.file", UriKind.Absolute));
    }

    public static void CopyStream(Stream input, Stream output)
    {
        var buffer = new byte[32768];
        while (true)
        {
            int read = input.Read(buffer, 0, buffer.Length);
            if (read <= 0)
                return;

            output.Write(buffer, 0, read);
        }
    }

    private static void WcOpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
    {
        using (IsolatedStorageFile userStoreForApplication = IsolatedStorageFile.GetUserStoreForApplication())
        {
            var isolatedStorageFileStream = userStoreForApplication.CreateFile("mylocalfilename");

            using (isolatedStorageFileStream)
            {
                CopyStream(e.Result, isolatedStorageFileStream);
            }
        }
    }

You could download the files and copy them to Isolated Storage.

Something like this...

        private void DownloadFiles()
    {
        var wc = new WebClient();
        wc.OpenReadCompleted += WcOpenReadCompleted;
        wc.OpenReadAsync(new Uri("http://myserver/myfile.file", UriKind.Absolute));
    }

    public static void CopyStream(Stream input, Stream output)
    {
        var buffer = new byte[32768];
        while (true)
        {
            int read = input.Read(buffer, 0, buffer.Length);
            if (read <= 0)
                return;

            output.Write(buffer, 0, read);
        }
    }

    private static void WcOpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
    {
        using (IsolatedStorageFile userStoreForApplication = IsolatedStorageFile.GetUserStoreForApplication())
        {
            var isolatedStorageFileStream = userStoreForApplication.CreateFile("mylocalfilename");

            using (isolatedStorageFileStream)
            {
                CopyStream(e.Result, isolatedStorageFileStream);
            }
        }
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文