如何在c#中获取文件夹的文件名

Kas*_*yap -2 c# asp.net file-io file-upload file

我想要c#中特定文件夹的文件名.

我正在使用以下代码

string[] filePaths = Directory.GetFiles(@"c:\MyDir\");
Run Code Online (Sandbox Code Playgroud)

我不想使用getfiles函数,因为它被进程锁定.我只想要文件名,而不是整个路径.

我怎样才能做到这一点?

这是我的完整代码.

protected void Button1_Click(object sender, EventArgs e)
{
    if (Directory.Exists(Server.MapPath("Import\\")))
    {
        if (FileUpLoad1.HasFile)
            try
            {
                FileUpLoad1.SaveAs(Server.MapPath("Import\\" + FileUpLoad1.FileName));
                Label1.Text = FileUpLoad1.FileName;
            }
            catch (Exception ex)
            {
                Label1.Text = "ERROR: " + ex.Message.ToString();
            }
        else
        {
            Label1.ForeColor = System.Drawing.Color.Red;
            Label1.Text = "No File Uploaded.";
        }
    }
    else
    {
        DirectoryInfo di = Directory.CreateDirectory(Server.MapPath("Import\\"));
        if (FileUpLoad1.HasFile)
            try
            {
                FileUpLoad1.SaveAs(Server.MapPath("Import\\" + FileUpLoad1.FileName));
                Label1.Text = FileUpLoad1.FileName;
            }
            catch (Exception ex)
            {
                Label1.Text = "ERROR: " + ex.Message.ToString();
            }
        else
        {
            Label1.ForeColor = System.Drawing.Color.Red;
            Label1.Text = "No File Uploaded.";
        }
    }
}

protected void Button2_Click(object sender, EventArgs e)
{
    string[] filePaths = Directory.GetFiles(Server.MapPath("Import"));
    PdfDocument pdfDoc = new PdfDocument();

        foreach (var item in filePaths)
        {
            PdfPage pdfPage = new PdfPage();
            pdfPage.Size = PageSize.Letter;
            pdfDoc.Pages.Add(pdfPage);
            using (var pdfGfx = XGraphics.FromPdfPage(pdfPage))
            {
                pdfGfx.DrawImage(XImage.FromFile(item), 0, 0);
            }
        }

        pdfDoc.Save(Server.MapPath("PDF\\")+ "vivek.pdf");
        pdfDoc.Dispose();
        pdfDoc.Close();

        Label1.Text = "pdf sucessfully created.";

}

protected void Button3_Click(object sender, EventArgs e)
{
    System.IO.Directory.Delete(Server.MapPath("Import\\"),true);
}
Run Code Online (Sandbox Code Playgroud)

按钮1用于导入,按钮2用于从jpg创建pdf,按钮3用于删除jpg文件

Raj*_*esh 6

您可以使用以下代码获取没有完整路径的文件名

DirectoryInfo dirInfo = new DirectoryInfo(@"c:\MyDir\");
List<string> filenames = dirInfo.GetFiles().Select(i => i.Name).ToList();
Run Code Online (Sandbox Code Playgroud)