我试图用System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(resource);读取一个嵌入的文本文件,但它给了我一个Stream。嵌入的资源是一个文本文件,那么,如何将此Stream转换为TextReader
发布于 2011-03-18 01:44:08
TextReader tr = new StreamReader(stream);发布于 2011-03-18 01:42:23
StreamReader是TextReader的子类,因此您将能够执行以下操作:
using(var stream = System.Reflection.Assembly.GetExecutingAssembly().
GetManifestResourceStream(resource))
using(var reader = new StreamReader(stream))
{
// Use reader.
}发布于 2011-03-18 01:42:58
您可以像这样读取您的资源文件:
Assembly resourceAssembly = Assembly.LoadFrom(resourceFile.FullName);
string[] manifests = resourceAssembly.GetManifestResourceNames();
using (ResourceReader reader = new ResourceReader(
resourceAssembly.GetManifestResourceStream(manifests[0])))
{
foreach (IDictionaryEnumerator dict in reader)
{
string key = dict.Key as string;
object val = dict.Value;
}
}https://stackoverflow.com/questions/5342975
复制相似问题