提问人:Cheri Choc 提问时间:6/21/2023 最后编辑:Cheri Choc 更新时间:6/21/2023 访问量:61
C# 使用目录获取文件名
C# get filenames using a directory
问:
我有一个包含多个文件的路径“C:\Desktop\Testing”,例如“abc.txt”;”def.txt“,
我想将路径 + 文件名显示为字符串。代码是这样的
string path = @"C:\Desktop\Testing";
string[] filelist = Directory.GetFiles(path);
foreach (string file in fileList)
{
}
string fullPathName = path + file;
我需要 fullPathName 才能通过 addfile 创建 zip。CreateEntryFromFile(fullPathName, 文件)
fullPathName 的结果应为 C:\Desktop\Testing\abc.txt
答:
0赞
Steve
6/21/2023
#1
根据文档 Directory.GetFiles
返回指定 目录。
所以我想你的循环可能是
foreach (string file in fileList)
{
addfile.CreateEntryFromFile(file, Path.GetFileName(file));
}
Path.GetFileName 将剥离路径部分并仅返回文件名
评论
0赞
Cheri Choc
6/21/2023
我使用以下命令收到错误: string inputfilepath = @“C:\Desktop\Testing” string[] fileList = Directory.GetFiles(inputfilepath);foreach (string文件 in fileList) { var fileStream = new FileStream(zipfile, FileMode.Create); fileStream.Close(); using (ZipArchive addfile = ZipFile.Open(zipfile, ZipArchiveMode.Update)) { addfile.CreateEntryFromFile(inputfilepath, Path.GetFileName(文件));} File.Delete(输入文件路径);}
0赞
Steve
6/21/2023
为什么要将 zip 文件的创建放在循环中?也无需一次又一次地打开 ZipFile。这些操作应位于循环外部。错误消息是什么?
评论
Directory.GetFiles