HOWTO · Csharp
Eingebettete Ressourcentextdatei in C# lesen
In diesem Tutorial erfahren Sie, wie Sie eingebettete Ressourcentextdateien mit der Programmiersprache C# lesen.
Dieses Tutorial demonstriert das Lesen eingebetteter Ressourcentextdateien mit der Programmiersprache C#.
Eingebettete Ressourcen-Textdatei lesen
Die eingebetteten Dateien werden als eingebettete Ressourcen bezeichnet, und Sie können zur Laufzeit auf diese Dateien zugreifen, indem Sie die Assembly-Klasse verwenden, die sich im Namespace System.Reflection befindet. Eine eingebettete Datei kann aus jeder Datei erstellt werden, die derzeit Teil des Projekts ist.
Um eine eingebettete Ressourcentextdatei zu lesen, müssen wir die folgenden Schritte ausführen:
-
Ordner und Datei hinzufügen
Zuerst fügen wir dem Projekt einen Ordner namens
fileshinzu. Dann fügen wir die in diesen Ordner eingebettete Datei hinzu, indem wir die OptionHinzufügen -> Vorhandenes Elementverwenden, die imKontextmenüdesSolution Explorerzu finden ist, wie unten gezeigt.Dadurch können wir die in den Ordner eingebettete Datei hinzufügen.
Nachdem die einzubettenden Dateien hinzugefügt wurden, müssen Sie mit der rechten Maustaste auf
Dateiklicken und dann aufEigenschaftenklicken.
Folgen Sie nun dem Screenshot unten, um den Wert des Attributs
Build ActionvonContentauf die eingebettete Ressource zu ändern.
-
Erstellen Sie ein Windows-Formular
Fügen Sie zuerst eine
TextBoxzum Windows-Formular hinzu und nennen Sie sietxtTextBoxaus ihrenEigenschaften.
Fügen Sie nun eine Schaltfläche mit dem Namen
btnTexthinzu und zeigen Sie den TextRead Embed Textauf der Schaltfläche an, wie unten gezeigt:
-
Schreiben Sie Windows Form Code
Zuerst müssen wir die folgenden Bibliotheken importieren:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; using System.Reflection;Indem wir mit der rechten Maustaste auf die Schaltfläche
Einbettungstext lesenklicken, um ihr Ereignis zu erstellen, schreiben wir hier den Schaltflächencode wie folgt:
Wir erstellen ein
Assembly-Methodenobjekt namensassembly:var asmbly = Assembly.GetExecutingAssembly();Dann erstellen wir eine Variable vom Typ
varmit dem Namenfilepath. Diese Variable enthält den Textdateipfad.var filePath = "ReadEmbedTextbyZeeshan.files.Shani.txt";Zuletzt zeigen wir eingebetteten Dateitext mit
StreamReader, der eine Textdatei aus dem angegebenen Pfad liest.using (Stream s = asmbly.GetManifestResourceStream(filePath)) using ( StreamReader sr = new StreamReader(s)) { txtTextBox.Text = sr.ReadToEnd(); } -
Vollständiger Quellcode
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; using System.Reflection; namespace ReadEmbedTextbyZeeshan { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btnText_Click(object sender, EventArgs e) { var asmbly = Assembly.GetExecutingAssembly(); var filePath = "ReadEmbedTextbyZeeshan.files.Shani.txt"; using (Stream s = asmbly.GetManifestResourceStream(filePath)) using ( StreamReader sr = new StreamReader(s)) { txtTextBox.Text = sr.ReadToEnd(); } } } }Wenn wir auf die Schaltfläche
Read Embed Textklicken, wird die folgende Ausgabe angezeigt:Ausgang: