gpt4 book ai didi

c# - 保存到 silverlight 中已打开的文件时出现未处理的异常

转载 作者:行者123 更新时间:2023-11-30 18:05:07 25 4
gpt4 key购买 nike

我正在尝试编写用于在 Silverlight 4.0 中将文件保存到本地磁盘的逻辑。为此,我正在使用 SaveFileDialog 类。它工作正常。但是当我试图保存到一个已经打开以供查看的文件时,我遇到了一个未处理的异常。应用程序也会立即崩溃。

Silverlight 3 也有类似的问题。我通过在 application_unhandledexception 事件中搜索异常中的一些 SaveFileStream 文本来解决这个问题。我原以为这会在 Silverlight 4 中得到处理,但现在情况变得更糟了。即使是解决方法现在也不起作用。

我已经在 SaveFileDialog 逻辑周围放置了 try catch 并且 IOException(另一个进程正在使用文件)在这里被安全捕获,但是我上面描述的异常立即是触发。

如有任何帮助,我们将不胜感激。

更新:这种情况发生在 excel 文件上,而不会发生在 txt 文件上。我认为所有 MS Office 文件都会发生这种情况。

A post about the issue on the official forum

最佳答案

请问您是如何保存文件的?Stream 是否已正确冲洗、关闭和处置?

以这个为例(注意:有很多替代方法可以做到这一点):

using (Stream stream = new IsolatedStorageFileStream("somefilename.ext", FileMode.Create, FileAccess.Write, IsolatedStorageFile.GetUserStoreForApplication()))
{
// Use the stream normally in a TextWriter
using (TextWriter writer = new StreamWriter(stream, Encoding.UTF8))
{
writer.Flush();
writer.Close();
}

stream.Close();
}

希望对您有所帮助 :-)

关于c# - 保存到 silverlight 中已打开的文件时出现未处理的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5868415/

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