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

C# 如何在c中获取文件夹的文件名#,c#,asp.net,file,file-upload,file-io,C#,Asp.net,File,File Upload,File Io,我想要c#中特定文件夹的文件名 我正在使用以下代码 string[] filePaths = Directory.GetFiles(@"c:\MyDir\"); 我不想使用getfiles函数,因为它被进程锁定。我只需要文件名,而不需要整个路径 我该怎么做 这是我的全部代码 protected void Button1_Click(object sender, EventArgs e) { if (Directory.Exists(Server.MapPath("Import\\"))

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

我正在使用以下代码

string[] filePaths = Directory.GetFiles(@"c:\MyDir\");
我不想使用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);
}
按钮1用于导入和删除 按钮2用于从jpg和
按钮3用于删除jpg文件

您可以使用下面的代码获取文件名,而不需要完整的路径

DirectoryInfo di = new DirectoryInfo(@"c:\MyDir\");
FileInfo [] files = di.GetFiles();

files[0].Name ... // this is just name of the file
files[0].FullName ... // this is the full pathname of the file    
files[0].Delete(); // will delete first of the files in list - just example
DirectoryInfo dirInfo = new DirectoryInfo(@"c:\MyDir\");
List<string> filenames = dirInfo.GetFiles().Select(i => i.Name).ToList();
DirectoryInfo dirInfo=newdirectoryinfo(@“c:\MyDir\”);
List filenames=dirInfo.GetFiles().Select(i=>i.Name.ToList();

您忘记了导致进程锁定的代码您尝试过什么吗?向我们显示代码,否则我们可能会建议您认为已经无效的代码。在这之后,实际上我想删除这些文件。当我使用getfiles函数时,无法删除它。显示所有代码。你做错了什么