2013-07-24 16 views
13

Ho molti file txt nella cartella Risorse. Uno di questi è corner.txt. Posso accedere a questo file tramite questo snippet di codice:Ottieni risorse con stringa

Properties.Resources.corner 

Conservo nomi di file in variabili stringa. Per esempio:

string fileName = "corner.txt"; 

voglio accedere al file tramite:

Properties.Resources.fileName 

è possibile? Come posso accedere?

+0

Non è assolutamente chiaro cosa stai chiedendo. Dov'è questo 'fileName'? È un bene generato? È una variabile locale che hai dichiarato in una classe completamente dissociata? Che cosa? –

+2

Duplicato: http://stackoverflow.com/a/3314213/2524304 – FSou1

+0

L'impostazione del testo in grassetto non cancella ciò che stai chiedendo. FileName è un percorso completo o solo il nome del file? O è una classe a cui vuoi accedere? – Abbas

risposta

36

ho risolto il problema questo frammento di codice:

string st = Properties.Resources.ResourceManager.GetString(tableName); 

Così, ho non usare il nome del file, io uso la stringa del file txt. Questo è utile per me.

Grazie mille.

+0

Non ho capito. Puoi dare qualche dettaglio in più, per favore – Catbuilts

9

È possibile utilizzare Reflection così:

var type = typeof(Properties.Resources); 
var property = type.GetProperty(fileName, BindingFlags.Static| BindingFlags.NonPublic|BindingFlags.Public); 
var value = property.GetValue(null, null); 

o utilizzare il ResourceManager così:

value = Properties.Resources.ResourceManager.GetObject(fileName, Properties.Resources.Culture); 
Problemi correlati