C# 操作Excel 写入数据、图片

 需要引用 using Spire.Xls;

public class ReplaceExcelData
    {
        public string num { set; get; }
        public object Xvalue { set; get; }
        public object Yvalue { set; get; }
        public object Zvalue { set; get; }

        public ReplaceExcelData(istring _NUM, object _Xvalue, object _Yvalue, object _Zvalue)
        {
            this.num = _NUM;
            this.Xvalue = _Xvalue;
            this.Yvalue = _Yvalue;
            this.Zvalue = _Zvalue;
        }
    }

//我这里从txt文档李读取数据 存到集合内

public static List<ReplaceExcelData> data(string path)
        {
            List<ReplaceExcelData> repData = new List<ReplaceExcelData>();

            string[] allLines = System.IO.File.ReadAllLines(path, Encoding.Default);
            foreach (var vbs in allLines)
            {
                string[] value = vbs.Replace(" ", "").Split('\t');
                repData.Add(new ReplaceExcelData(value[0], value[2], value[4], value[6]));
            }
            return repData;
        }

 public static void ReplaceDataToExcel(string tempFilePath, List<ReplaceExcelData> replaceData)
        {
           //xlsx文件路径

string OutResult = @"C:\Users\80999\Desktop\result_" + DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss") + ".xlsx";

            List<ReplaceExcelData> datas = data(@"C:\Users\80999\Desktop\diff.txt");  //数据存放路径

            Workbook workbook = new Workbook();

            //获取第一张工作表
            Worksheet sheet = workbook.Worksheets[0];
            sheet.Range[1, 1].Text = "序号";   //表头
            sheet.Range[2, 1].Text = "X";
            sheet.Range[3, 1].Text = "Y";
            sheet.Range[4, 1].Text = "Z";
            for (int i = 1; i <= datas.Count; i++)
            {
                sheet.Range[1, i+1].Text = datas[i-1].num;
                sheet.Range[2, i+1].Text = datas[i-1].Xvalue.ToString();
                sheet.Range[3, i+1].Text = datas[i-1].Yvalue.ToString();
                sheet.Range[4, i+1].Text = datas[i-1].Zvalue.ToString();
            }
            ExcelPicture picture = sheet.Pictures.Add(2, 1, @"C:\Users\80999\Desktop\result.jpg"); //加载图片
            picture.Width = 631;  //设置图片宽度
            picture.Height = 2008; //设置图片高度
            picture.Rotation = 90;  //图片旋转角度
            picture.TopRow = 6;   //高度位置在哪一行
            picture.LeftColumnOffset = 75;
            picture.TopRowOffset = 20;
            workbook.SaveToFile(OutResult, FileFormat.Version2016);  //保存 
            //System.Diagnostics.Process.Start(OutResult);
            sheet.Clear();  //使用结束后释放
            workbook.Dispose();

        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#中,可以使用NPOI库来实现对Excel文件的写入操作。具体步骤如下: 1. 引入NPOI库,可以通过NuGet包管理器来安装。 2. 创建一个Workbook对象,表示一个Excel文件。 3. 创建一个Sheet对象,表示一个工作表。 4. 创建行和单元格对象,设置单元格的值。 5. 将行对象添加到工作表中。 6. 将工作表添加到Workbook对象中。 7. 将Workbook对象写入Excel文件中。 下面是一个示例代码,演示如何将数据写入Excel文件中: ``` using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using System.Collections.Generic; using System.IO; public class Supply { public string Value1 { get; set; } public string Value2 { get; set; } public string Value3 { get; set; } } public void WriteToExcel(List<Supply> data, string filePath) { // 创建一个Workbook对象,表示一个Excel文件 IWorkbook workbook = new HSSFWorkbook(); // 创建一个Sheet对象,表示一个工作表 ISheet sheet = workbook.CreateSheet("Sheet1"); // 创建行和单元格对象,设置单元格的值 int rowIndex = 0; foreach (Supply supply in data) { IRow row = sheet.CreateRow(rowIndex++); row.CreateCell(0).SetCellValue(supply.Value1); row.CreateCell(1).SetCellValue(supply.Value2); row.CreateCell(2).SetCellValue(supply.Value3); } // 将Workbook对象写入Excel文件中 using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write)) { workbook.Write(fs); } } ``` 在上面的代码中,我们首先创建了一个Workbook对象,然后创建了一个Sheet对象,表示一个工作表。接着,我们遍历数据列表,创建行和单元格对象,并设置单元格的值。最后,将Workbook对象写入Excel文件中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值