C# equivalent of getClassLoader().getResourceAsStr

2020-03-26 06:56发布

问题:

In Java you can read a file embedded inside a JAR-file by using the following code:

String file = "com/company/package/filename.txt";
InputStream is = ClassName.class.getClassLoader().getResourceAsStream(file);

What is the C#/.NET equivalent of the above code - that is, how do I read a file I've embedded inside a DLL?

Thanks!

回答1:

Once you've added the text file as a resource, and assigned a resourceName to it, then:

 Assembly assembly = Assembly.GetExecutingAssembly();
 TextReader inputStream = new StreamReader(assembly.GetManifestResourceStream(resourceName));
 string result = inputStream.ReadToEnd();

Note: this came from this posting