Prob. med streng (sti- og filnavn) i forb. med skrivning af fil
Jeg er ved at konvertere et program skrevet i Java 1.4.2 til C# & .NET frameworket. Jeg skal skrive et antal filer til en mappe på et drev. Hver fil skal have et individuelt nummer og jeg arbejder derfor med en for-løkke. Filerne skal hedde fil-1.txt, fil-2.txt … fil-n.txtJeg erklærer en StreamWriter file = new StreamWriter(@"d:\mappe\fil-1.txt"); og det virker fint.
Men når jeg så vil erstatte den statiske sti- og filnavn med variable går det galt. Jeg har debugget en del, da jeg tilsyneladende ikke kan finde ud af den rette formatering af sti- og filnavn (som jo virkede fint i Java programmet).
Jeg forestiller mig at jeg skulle kunne indsætte variable i strengen som StreamWriter tager som aktuel parameter. Men det går ikke. Jeg gør følgende:
string mappe = ””; // bliver sat lig med et textboxfelt i en Form
string fil = ””; // bliver sat lig med et textboxfelt i en Form
int taeller =1;
For(int i = 0; i<antal; i++)
{
StreamWriter file = new StreamWriter(@"d:\”+mappe+”\”+fil+”-“+taeller+”.txt");
// i en try-catch skabes filens indhold og filen lukkes efter hver iteration i for-løkken
taeller ++;
}
Men det virker ikke, så jeg prøvede at bygge sti- og filnavn op af flere gange:
FilNavn = mappe+"-"+nummer+".txt";
string destination = "F:\"+mappe+"\"+FilNavn;
MessageBox.Show("destination er :"+destination);
StreamWriter file = new StreamWriter("destination");
Men det giver andre problemer. Ved hjælp af MessageBox kan jeg opfange, at den destination er skrup forkert formateret. Man skulle tro at destination var lig med f:\mappe\fil-1.txt men den ser således ud:
F:\System.Windows.Forms.TextBox, Text: Tekst\System.Windows.Forms.TextBox, Text: Fil-1.txt
(Tekst er en eksisterende mappe på F-drevet og Fil-1.txt er den fil der skal oprettes)
Resultatet er naturligvis, at filen ikke bliver skrevet.
Hvad er det jeg gør forkert?
Mvh Mads