“不支持给定路径的格式”

时间:2014-03-05 19:34:08

标签: c#

这是我的第一个问题,英语不是我的第一语言,所以请全心投入。

基本上我的程序将数据保存在.js文件中。我使用SaveFileDialog方法设置路径并使用.FileName设置... well文件名。我就是这样做的

private void parcourir_Click(object sender, EventArgs e)
{
    SaveFileDialog exportJSFile = new SaveFileDialog();

    // Getting year, month and day of the day to generate the file name
    DateTime date = DateTime.Today;

    exportJSFile.FileName = date.Year + "_" + date.Month + "_" + date.Day + "_ct.js";
    if (exportJSFile.ShowDialog() == DialogResult.OK)
    {
        this.JSfilePath.Text = exportJSFile.FileName;
    }
}

然后我使用StreamWriter在我的文件中写入数据

// Writing the first block (header) of data into the .js file
System.IO.StreamWriter objWriterFirstBlock;
objWriterFirstBlock = new System.IO.StreamWriter(@JSfilePath.ToString());
objWriterFirstBlock.Write(firstBlock);
objWriterFirstBlock.Close();

当我调试它时,我收到来自此行的上述错误消息:

objWriterFirstBlock = new System.IO.StreamWriter(@JSfilePath.ToString());

我在没有@的情况下尝试了相同的命令,结果相同。当我使用对话框设置路径名称时,路径显示在文本框中,似乎是正确的。当我在调试器中查询JSfilePath.ToString()的值时,它会显示如下路径:

@JSfilePath = {Text = "C:\\Users\\admin\\Documents\\2014_3_5_ct.js"}

有人可以告诉我什么是错的

1 个答案:

答案 0 :(得分:6)

假设JSfilePathTextBox,您可能会在ToString()本身上使用TextBox方法,这不会返回您要查找的内容。

如果您将其更改为JSfilePath.Text,则应该为您解决此问题:

objWriterFirstBlock = new System.IO.StreamWriter(JSfilePath.Text);