17. januar 2006 - 09:51
Der er
18 kommentarer og 1 løsning
Get FileName
Hej gutter Jeg skal bruge noget kode til at hente filnavnene fra en bestemt mappe. Jeg vil også gerne udelade extension (.et-eller-andet) fra disse. Jeg har læst mig lidt frem til at jeg skal bruge noget i stil med: ___ public string[] GetDeviceList { get; } ___ Jeg kan godt se at der mangler noget, men jeg er kun nået hertil indtil videre. For lige at udfordre lidt, er det også meningen at jeg skal vise resultaterne som Items i en combobox. Er der nogen af jer glade, tastatur-tæskere der kan svare på dette?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
17. januar 2006 - 10:06
#1
Hvad med noget i stil med: Using System.IO; string[] filer = Directory.GetFiles("C:\\sti til filerne"); ArrayList filnavne = new ArrayList(); for(int i = 0; i < filer.Length; i++) { string fil = filer[i].Substring(filer[i].LastIndexOf("\\") + 1, filer[i].LastIndexOf(".") - filer[i].LastIndexOf("\\") - 1); filnavne.Add(fil); } comboBox1.DataSource = filnavne;
17. januar 2006 - 10:18
#2
Hmmm,... Den forventer en "get" eller "set" accessor.
17. januar 2006 - 10:19
#3
Altså til: ___ string[] filer = Directory.GetFiles("C:\\sti til filerne"); ___
17. januar 2006 - 10:41
#4
Får du en fejl når du kører den?
17. januar 2006 - 10:43
#5
Jep. Den siger: "Error 1 A get or set accessor expected ... "
17. januar 2006 - 10:43
#6
i hvilken linie?
17. januar 2006 - 10:45
#7
Her er kodestumpen: ___ public void GetDeviceList { string[] filer = Directory.GetFiles(".\\Files"); ArrayList filnavne = new ArrayList(); for(int i = 0; i < filer.Length; i++) { string fil = filer[i].Substring(filer[i].LastIndexOf("\\") + 1, filer[i].LastIndexOf(".") - filer[i].LastIndexOf("\\") - 1); filnavne.Add(fil); } } ___ ...Og ja. Jeg har husket "Using System.IO;"
17. januar 2006 - 10:46
#8
Det er fordi du har den inden i en property det var ikke meningen. Prøv at lave en void metode hvor du smider den i.
17. januar 2006 - 10:50
#9
Øhm,... Jeg er ikke helt med.
17. januar 2006 - 10:50
#10
hvis du vil have den i en property kan du prøve noget i retning af det her: public ArrayList Filnavne { get { string[] filer = Directory.GetFiles(".\\Files"); ArrayList filnavne = new ArrayList(); for(int i = 0; i < filer.Length; i++) { string fil = filer[i].Substring(filer[i].LastIndexOf("\\") + 1, filer[i].LastIndexOf(".") - filer[i].LastIndexOf("\\") - 1); filnavne.Add(fil); } return filnavne; } } ComboBox1.DataSource = Filnavne;
17. januar 2006 - 10:52
#11
ellers skal du bare lave en metode som her: public void hentFiler() { string[] filer = Directory.GetFiles("C:\\Documents and Settings\\mwmso\\My Documents\\Diverse\\Medarbejderinfo\\2005"); ArrayList filnavne = new ArrayList(); for(int i = 0; i < filer.Length; i++) { string fil = filer[i].Substring(filer[i].LastIndexOf("\\") + 1, filer[i].LastIndexOf(".") - filer[i].LastIndexOf("\\") - 1); filnavne.Add(fil); } comboBox1.DataSource = filnavne; }
17. januar 2006 - 11:00
#12
Tester på livet løs,... ...Vender tilbage om lidt.
17. januar 2006 - 11:01
#13
Bare i orden :-)
17. januar 2006 - 11:06
#14
Ellers, hvis du har problemer med at få det til at virke så paste klassen ind...
17. januar 2006 - 11:43
#15
svarer string fil = filer[i].Substring(filer[i].LastIndexOf("\\") + 1, filer[i].LastIndexOf(".") - filer[i].LastIndexOf("\\") - 1); ikke til string fil = Path.GetFileNameWithoutExtension(filer[i]); ?
17. januar 2006 - 11:52
#16
...Fik en meget underlig "Warning" som ikke rigtig havde noget med den nye kode at gøre. Jeg har lige brugt tid på at finde ud af hvorfor den opstod og ligpludselig forsvandt den. Koden virker perfekt nu. Tusind tak. Bare smid et svar, så er pointene retmæssigt dine.
17. januar 2006 - 11:53
#17
"ligpludselig" = "lige pludselig" Flot tastaturspasser!!!
17. januar 2006 - 11:53
#18
...Ups. Så ikke dit indlæg Arne. Pointene er selvfølgelig til mikkel_sommmer.
17. januar 2006 - 12:14
#19
Ja sådan kan det gå, men godt at du fandt den ;-)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.