将文件夹中的图像添加到 Excel 工作表
Add image from a folder to Excel worksheet
我想将图像文件夹中的所有图像导出到 Excel。我想将图像文件夹中的每张图像放入新的 excel 工作表中。例如,如果文件夹中有十张图片,我想在同一个 Excel 工作簿上有十张 Excel 工作表,每张工作表上有一张图片。
这是我的代码:
string[] filesindirectory = Directory.GetFiles(Server.MapPath("~/Image"));
int count = 0;
foreach (string img in filesindirectory)
{
count++;
ExcelWorksheet ws = objExcelPackage.Workbook.Worksheets.Add("Worksheet - " + count); //create new worksheet
System.Web.UI.WebControls.Image TEST_IMAGE = new System.Web.UI.WebControls.Image();
TEST_IMAGE.ImageUrl = "Image/" + Path.GetFileName(img);
TEST_IMAGE.ImageUrl = this.GetAbsoluteUrl(TEST_IMAGE.ImageUrl);
//I want to insert image here
var filepath= new FileInfo(@"C:\Users\user\Desktop\folder\" + datetime.ToString("dd-MM-yyyy_hh-mm-ss") + ".xlsx");
objExcelPackage.SaveAs(filepath);
这是我更新后的代码:
string[] filesindirectory = Directory.GetFiles(Server.MapPath("~/Image"));
int count = 0;
foreach (string img in filesindirectory)
{
count++;
ExcelWorksheet ws = objExcelPackage.Workbook.Worksheets.Add("Worksheet - " + count); //create new worksheet
System.Web.UI.WebControls.Image TEST_IMAGE = new System.Web.UI.WebControls.Image();
var filedest = new FileInfo(@"C:\Users\user\Desktop\Project\Project1\Source Code\Test\Test\Image\");
System.Drawing.Image myimage = System.Drawing.Image.FromFile(filedest);
var pic = ws.Drawings.AddPicture("NAME", myimage);
var filepath = new FileInfo(@"C:\Users\user\Desktop\folder\" + datetime.ToString("dd-MM-yyyy_hh-mm-ss") + ".xlsx");
objExcelPackage.SaveAs(filepath);
但我收到以下错误:
FileNotFoundException was unhandled by user code
,这一行:
var filedest = new FileInfo(@"C:\Users\user\Desktop\Project\Project1\Source Code\Test\Test\Image\");
如何使用 EPPlus 和我当前的代码将文件夹中的图像添加到 Excel 工作表?
这应该可以帮助你...
// Variable
string[] filesDirectory = Directory.GetFiles(Server.MapPath("~/Image"));
int count = 0;
foreach(string img in filesDirectory)
{
count++;
ExcelWorksheet ws = pkg.Workbook.Worksheets.Add("Worksheet - " + count);
// img variable actually is your image path
System.Drawing.Image myImage = System.Drawing.Image.FromFile(img);
var pic = ws.Drawings.AddPicture("NAME", myImage);
// Row, RowoffsetPixel, Column, ColumnOffSetPixel
pic.SetPosition(1, 0, 2, 0);
}
我想将图像文件夹中的所有图像导出到 Excel。我想将图像文件夹中的每张图像放入新的 excel 工作表中。例如,如果文件夹中有十张图片,我想在同一个 Excel 工作簿上有十张 Excel 工作表,每张工作表上有一张图片。
这是我的代码:
string[] filesindirectory = Directory.GetFiles(Server.MapPath("~/Image"));
int count = 0;
foreach (string img in filesindirectory)
{
count++;
ExcelWorksheet ws = objExcelPackage.Workbook.Worksheets.Add("Worksheet - " + count); //create new worksheet
System.Web.UI.WebControls.Image TEST_IMAGE = new System.Web.UI.WebControls.Image();
TEST_IMAGE.ImageUrl = "Image/" + Path.GetFileName(img);
TEST_IMAGE.ImageUrl = this.GetAbsoluteUrl(TEST_IMAGE.ImageUrl);
//I want to insert image here
var filepath= new FileInfo(@"C:\Users\user\Desktop\folder\" + datetime.ToString("dd-MM-yyyy_hh-mm-ss") + ".xlsx");
objExcelPackage.SaveAs(filepath);
这是我更新后的代码:
string[] filesindirectory = Directory.GetFiles(Server.MapPath("~/Image"));
int count = 0;
foreach (string img in filesindirectory)
{
count++;
ExcelWorksheet ws = objExcelPackage.Workbook.Worksheets.Add("Worksheet - " + count); //create new worksheet
System.Web.UI.WebControls.Image TEST_IMAGE = new System.Web.UI.WebControls.Image();
var filedest = new FileInfo(@"C:\Users\user\Desktop\Project\Project1\Source Code\Test\Test\Image\");
System.Drawing.Image myimage = System.Drawing.Image.FromFile(filedest);
var pic = ws.Drawings.AddPicture("NAME", myimage);
var filepath = new FileInfo(@"C:\Users\user\Desktop\folder\" + datetime.ToString("dd-MM-yyyy_hh-mm-ss") + ".xlsx");
objExcelPackage.SaveAs(filepath);
但我收到以下错误:
FileNotFoundException was unhandled by user code
,这一行:
var filedest = new FileInfo(@"C:\Users\user\Desktop\Project\Project1\Source Code\Test\Test\Image\");
如何使用 EPPlus 和我当前的代码将文件夹中的图像添加到 Excel 工作表?
这应该可以帮助你...
// Variable
string[] filesDirectory = Directory.GetFiles(Server.MapPath("~/Image"));
int count = 0;
foreach(string img in filesDirectory)
{
count++;
ExcelWorksheet ws = pkg.Workbook.Worksheets.Add("Worksheet - " + count);
// img variable actually is your image path
System.Drawing.Image myImage = System.Drawing.Image.FromFile(img);
var pic = ws.Drawings.AddPicture("NAME", myImage);
// Row, RowoffsetPixel, Column, ColumnOffSetPixel
pic.SetPosition(1, 0, 2, 0);
}