2015-07-12 99 views
-1

我一直在試圖製作一個程序,它節省了機械發票。所以我有這麼多;c#textbox-as-filename問題

oWord.Application.ActiveDocument.SaveAs2("C:/BMW/Invoices/" + Regbox.Text + "/thing.doc"); 

將單詞doc保存在由自行車註冊指定的文件夾中 - 此工作正常。但我真正想要的是用作文件名的日期......我無法弄清楚,所以我做了一個日期標籤,並計劃使用它的文本作爲文件名,而不是(我知道,它很長方式......但它的工作原理)。無論如何,我已經嘗試過;

oWord.Application.ActiveDocument.SaveAs2("C:/BMW/Invoices/" + Regbox.Text + "/" + label19.Text + ".doc"); 

這是一個 「無效文件名」

oWord.Application.ActiveDocument.SaveAs2("C:/BMW/Invoices/" + Regbox.Text + "/label19.Text.doc"); 

這個保存爲 「label19.Text.doc」

oWord.Application.ActiveDocument.SaveAs2("C:/BMW/Invoices/" + Regbox.Text + "/" + label19.Text, ".doc"); 

這扔了錯誤 「(DISP_E_TYPEMISMATCH)」

我需要做的就是讓label19文本以擴展名爲.doc的文件名工作......或者以日期爲文件名的另一種方式我

+0

當你測試它時,label19.Text的值是多少? – Brian

回答

0

如果您需要使用當前日期作爲文件名,那麼你可以使用:

oWord.Application.ActiveDocument.SaveAs2("C:/BMW/Invoices/" + Regbox.Text + "/" + DateTime.Now.ToString("MM-dd-yyyy") + ".doc") 
+0

感謝你 - 它的工作。當我無法弄清楚哈哈時,總是那些簡單的事情更令人沮喪。 :) – Sean

0

在一個字符串變量生成的文件名:

string filename = "C:/BMW/Invoices/" + Regbox.Text + "/" + DateTime.Now.ToString("MM-dd-yy"); 

,然後將它傳遞給SaveAs2方法:

oWord.Application.ActiveDocument.SaveAs2(filename, ".doc");