C#中如何打开文件名中带变量的文件

时间:2022-08-31 08:11:02
 private void 在线阅读ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //在dgv中读取出书名 保存到bname中
            string bname = Convert.ToString(dataGridView1.SelectedRows[0].Cells[1].Value);
            //运行后bname中的书名正确
            MessageBox.Show(bname);
            //运行后提示找不到该文件  
                System.Diagnostics.Process.Star("E:/Booksystem/booksystem/booksystem/bin/Debug/"bname+".doc");
            
        }

9 个解决方案

#1


"E:\\Booksystem\\booksystem\\booksystem\\bin\\Debug\\"+bname+".doc"

#2


还是不行啊 哥们

#3


二楼正解,这个应该是简单的拼串吧

#4


 System.Diagnostics.Process.Start(@"E:/Booksystem/booksystem/booksystem/bin/Debug/" + bname + ".doc");

#5


System.Diagnostics.Process.Start(@"E:\Booksystem\booksystem\booksystem\bin\Debug\" + bname + ".doc");

#6


围观一下。

我的电脑上怎么就没有哪个文件的文件名“带变量”呢?难道是windows 2012操作系统的新技术?

#7


System.Diagnostics.Process.Start(Application.StartPath+"\\" + bname + ".doc"); 
 file.exists判断

#8


引用 6 楼 sp1234 的回复:
围观一下。

我的电脑上怎么就没有哪个文件的文件名“带变量”呢?难道是windows 2012操作系统的新技术?


不是文件名带变量,而是用一个变量来保存文件名

#9


支持5楼,断点看一下 bname 是否已带后缀。

#1


"E:\\Booksystem\\booksystem\\booksystem\\bin\\Debug\\"+bname+".doc"

#2


还是不行啊 哥们

#3


二楼正解,这个应该是简单的拼串吧

#4


 System.Diagnostics.Process.Start(@"E:/Booksystem/booksystem/booksystem/bin/Debug/" + bname + ".doc");

#5


System.Diagnostics.Process.Start(@"E:\Booksystem\booksystem\booksystem\bin\Debug\" + bname + ".doc");

#6


围观一下。

我的电脑上怎么就没有哪个文件的文件名“带变量”呢?难道是windows 2012操作系统的新技术?

#7


System.Diagnostics.Process.Start(Application.StartPath+"\\" + bname + ".doc"); 
 file.exists判断

#8


引用 6 楼 sp1234 的回复:
围观一下。

我的电脑上怎么就没有哪个文件的文件名“带变量”呢?难道是windows 2012操作系统的新技术?


不是文件名带变量,而是用一个变量来保存文件名

#9


支持5楼,断点看一下 bname 是否已带后缀。