首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最适当地使用App.GetResourceStream返回的流

最适当地使用App.GetResourceStream返回的流
EN

Stack Overflow用户
提问于 2013-01-01 15:05:58
回答 1查看 172关注 0票数 0

我的问题已经在Releasing underlying Stream returned by Application.GetResourceStream on WP7被问到了,但我对这个问题有几种不同的看法:

  1. 这是为桌面WPF应用程序,而不是WP7,如果它有任何不同。
  2. 我必须决定是否在流之上构建的流读取器上使用using块。

下面是一些代码:

代码语言:javascript
复制
System.Windows.Resources.StreamResourceInfo ri = 
   App.GetResourceStream(new Uri("Resources/Idioms.txt", UriKind.Relative));
using (System.IO.StreamReader sr = new System.IO.StreamReader(ri.Stream))
{
   idioms = sr.ReadToEnd().Split(lineSeps, StringSplitOptions.RemoveEmptyEntries);
}

现在StreamReader的close方法(我假设它是实现IDisposable.Dispose的方法)表明它也关闭了底层流(我认为它也实现了IDisposable.Dispose)。

关闭或处理由IO.StreamStream属性提供的Stream对象也是如此:

  1. 期望的
  2. 可接受,或
  3. 不正确

(我应该在构建在流之上的读取器上使用或避免使用using吗?)

EN

回答 1

Stack Overflow用户

发布于 2013-01-02 00:15:06

StreamReader的ctor有一个过载,可以让它避免流被关闭。

此外,您还稍微向后(除非我误解了)。是Dispose方法调用了Close,而不是相反。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14111506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档