[英]How to add multiple files using Directory.GetFiles() in C#?
之前可能已經問過這個問題,但是我無法在單循環中傳遞我的方法需要的三個參數。 我在該目錄(xml,jpg,tiff)(混合)中有數千個文件。
這就是我想要得到的。
protected void btn_Click(object sender, EventArgs e)
{
var path = @"d:\xmlfiles";
foreach (var file in Directory.GetFiles(path))
{
ProcessFile(file,param2,param3);
}
}
static void ProcessFile(string file_xml, string file_jpg, string file_tiff)
{
// do processing here...
//Adding data to sql
}
我嘗試了Path.GetExtension
,但它只提供擴展名。 我必須傳遞文件名,並且邏輯位於方法Processfile()
。
我看到很多問題,在此之前僅返回單個文件。 有其他解決方法嗎?
任何幫助將不勝感激。 謝謝。
因此,您有一個包含以下文件的目錄:
Foo.xml
, Foo.jpg
, Foo.tiff
Bar.xml
, Bar.jpg
, Bar.tiff
Baz.xml
, Baz.jpg
, Baz.tiff
您想一起處理同名文件。 然后,為什么不選擇並枚舉一個擴展名,並重建隨附的文件名:
foreach (var xmlFile in Directory.GetFiles(path, "*.xml"))
{
var extensionLess = Path.GetFilenameWithoutExtension(xmlFile);
var jpgFile = Path.Combine(path, extensionLess + ".jpg");
var tiffFile = Path.Combine(path, extensionLess + ".tiff");
ProcessFile(xmlFile, jpgFile, tiffFile);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.