2016-12-08 3 views
0

Ich suche überall im Internet, aber mein Code stimmt nicht mit den anderen überein. Ich habe dieseÄndern der Standard-Desktop-Speicherort von iTextSharp

string outputFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), fullname); 

ich nicht die Environment.SpecialFolder.Desktop haben kann, um es zu Documents/Files machen Wie kann ich festlegen, welche mein PDF-Dokument gespeichert werden Ordner?

Hier ist mein voller Code.

string outputFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), fullname); 
FileStream fs = new FileStream(outputFile, FileMode.Create, FileAccess.Write, FileShare.None); 
Document doc = new Document(PageSize.A4, 60, 60, 40, 30); 
PdfWriter w = PdfWriter.GetInstance(doc, fs); 
doc.Open(); 
    . 
    . 
    . 
doc.Close(); 
+0

Nicht sicher, dass ich Ihr Problem verstehe, aber Sie können einfach den Wert von 'outputFile' auf wo immer Sie wollen, es gehen und die Datei wird dort geschrieben werden. Was vermisse ich? – Adrian

+0

Hey ich habe versucht, was du gesagt hast und ich habe das gemacht. 'string outputFile =" C: \ Benutzer \ Firma \ Dokumente \ Meine Webseiten "' Aber es wirft mir eine 'UnauthorizedAccessException wurde unbehandelt'? – Fiendcoder1

+0

Das liegt daran, dass Sie in Ihrer 'outputFile' keinen Dateinamen angegeben haben, sondern nur den Ordner. – Adrian

Antwort

1

Wenn ich Sie richtig verstanden habe, ist das, was Sie verwenden sollten:

string outputFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), @"Documents/Files", fullname); 

Wenn Sie den gewünschten Ausgabeordner nicht ein Unterordner von Desktop ist, können Sie einfach entfernen Sie den Environment.GetFolderPath(...) Teil und Verwendung welchen Weg auch immer du willst. Vergessen Sie nicht, die Zeichenfolge zu verwenden (z. B. mit "@"). Und vergessen Sie nicht, den Dateinamen mit dem Pfad des Ausgabeordners zu kombinieren.

Wenn Sie nicht danach suchen, geben Sie bitte weitere Einzelheiten an.

+0

Aber das sind alle Details, die es gibt. Ich habe versucht, was Sie vorschlagen, und es gibt mir 'DirectoryNotFoundException' und es sagte, dass' Einen Teil des Pfades nicht finden konnte C: \ Users \ Company \ Desktop \ Dokumente \ Files \ fullname.pdf' – Fiendcoder1

+0

Bitte lesen Sie diesen Teil der Antwort : "Wenn der gewünschte Ausgabeordner kein Unterordner des Desktops ist, ..." –

+0

Oh okay, ja, tut mir leid. Ich habe es versucht und bin mit diesem absoluten Weg gelandet. 'string outputFile = Path.Combine (" C:/Benutzer/Firma/Downloads ", vollständiger Name);' und es funktioniert. Aber wofür wird das '@' verwendet? – Fiendcoder1