【问题标题】:c# textbox-as-filename problems时间:2019-05-01 标签:c#textbox-as-filename问题
【发布时间】:2015-07-12 10:29:13
【问题描述】:

我一直在尝试制作一个程序,它可以节省机械发票。所以我已经走到了这一步;

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 扩展名的文件名工作......或者以另一种方式将日期作为文件名来工作

【问题讨论】:

  • 测试时label19.Text的值是多少?

标签: c# textbox ms-word filenames office-interop


【解决方案1】:

如果您需要使用当前日期作为文件名,那么您可以使用:

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

【讨论】:

  • 感谢您的帮助 - 它成功了。当我想不通时,总是那些简单的事情更令人沮丧哈哈。 :)
【解决方案2】:

在字符串变量中生成文件名:

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

然后将其传递给SaveAs2方法:

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

【讨论】:

    猜你喜欢
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多