<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      國產(chǎn)化Excel開發(fā)組件Spire.XLS教程:C# 寫入 Excel ,輕松將數(shù)據(jù)導(dǎo)出到工作表

      Excel 作為最常用的數(shù)據(jù)管理與分析工具之一,被廣泛應(yīng)用于各類數(shù)據(jù)處理場景。在 C# 應(yīng)用程序開發(fā)過程中,無論是生成業(yè)務(wù)報表、導(dǎo)出數(shù)據(jù)庫查詢結(jié)果,還是實現(xiàn)自動化辦公流程,C# 寫入 Excel 的功能都扮演著至關(guān)重要的角色。

      借助 Spire.XLS for .NET這一強大的第三方庫,開發(fā)者無需在運行環(huán)境中安裝 Microsoft Excel,即可高效、靈活地實現(xiàn) Excel 文件的創(chuàng)建、寫入與導(dǎo)出操作。本文將系統(tǒng)講解如何 使用 C# 寫入 Excel 文件 ,包括不同數(shù)據(jù)類型的插入方法、批量數(shù)據(jù)寫入技巧、文件保存與導(dǎo)出,助力開發(fā)者提升數(shù)據(jù)處理與自動化能力。

      Spire.XLS for .NET試用下載,請聯(lián)系E-iceblue Spire官方授權(quán)代理商慧都科技

      歡迎加入Spire技術(shù)交流Q群(125237868),與更多小伙伴一起提升文檔開發(fā)技能~

      Spire.XLS for .NET 簡介與安裝

      什么是 Spire.XLS for .NET

      Spire.XLS for .NET 是由 E-iceblue 開發(fā)的一款專業(yè) Excel 庫。它允許開發(fā)人員在 C# 中寫入 Excel 文件,并執(zhí)行包括創(chuàng)建、編輯、讀取和導(dǎo)出 Excel 文檔在內(nèi)的多種操作,而無需安裝 Microsoft Excel。

      主要功能包括:

      • 通過編程寫入和更新 Excel 文件
      • 支持 Excel 格式(XLS、XLSX、CSV、ODS)
      • 提供高級功能,如公式、圖表、數(shù)據(jù)透視表和數(shù)據(jù)驗證
      • 將 Excel 導(dǎo)出為 PDF、HTML 和圖片格式
      • 在處理大型數(shù)據(jù)集時保持高性能,適用于桌面、服務(wù)器和 Web 應(yīng)用程序

      如何安裝 Spire.XLS for .NET

      方式一:通過 NuGet 安裝(推薦)

      1. 打開 Visual Studio。
      2. 依次選擇 工具 > NuGet 包管理器 > 管理解決方案的 NuGet 包...
      3. 搜索 Spire.XLS 并安裝。

      或直接使用包管理器控制臺:

      PM> Install-Package Spire.XLS

      方式二:手動安裝

      1. 聯(lián)系慧都科技下載 Spire.XLS 安裝包
      2. 在項目中添加對 Spire.Xls.dll的引用。

      安裝完成后,你就可以在 C# 中開始寫入 Excel 了。

      如何在 C# 中創(chuàng)建 Excel 文件

      第一步是創(chuàng)建一個新的工作簿并添加工作表,示例如下:

      using Spire.Xls;
      
      namespace CreateNewExcel
      {
          class Program
          {
              static void Main(string[] args)
              {
                  // 創(chuàng)建一個新的工作簿
                  Workbook workbook = new Workbook();
      
                  // 移除默認工作表
                  workbook.Worksheets.Clear();
      
                  // 添加一個工作表
                  Worksheet sheet = workbook.Worksheets.Add("報告");
      
                  // 保存空的 Excel 文件
                  workbook.SaveToFile("新建文檔.xlsx", ExcelVersion.Version2016);
                  workbook.Dispose();
              }
          }
      }

      此時,你已經(jīng)成功創(chuàng)建了一個包含名為“報告”的工作表的空 Excel 文件。接下來我們將向其中寫入數(shù)據(jù)。

      C# 向 Excel 單元格寫入不同數(shù)據(jù)類型

      Spire.XLS 允許你直接將多種數(shù)據(jù)類型寫入 Excel 單元格。常見示例如下:

      寫入文本

      sheet.Range["A1"].Text = "你好 Excel!";

      寫入數(shù)字

      sheet.Range["A2"].NumberValue = 123.45;

      寫入日期和時間

      sheet.Range["A3"].DateTimeValue = DateTime.Now;
      sheet.Range["A3"].NumberFormat = "yyyy-mm-dd hh:mm";

      寫入布爾值

      sheet.Range["A4"].BooleanValue = true;

      寫入 TimeSpan

      sheet.Range["A5"].TimeSpanValue = new TimeSpan(2, 30, 0);
      sheet.Range["A5"].NumberFormat = "[h]:mm:ss";

      插入公式

      sheet.Range["A6"].Formula = "=SUM(A2,100)";

      插入 HTML 格式字符串

      string htmlText = "<span style=\"font-family: Times New Roman; color: blue; font-size: 15pt;\">HTML <strong>格式文本</strong></span>";
      sheet.Range["A7"].HtmlString = htmlText;

      寫入通用值

      sheet.Range["A8"].Value = "一般數(shù)據(jù)";

      C# 將批量數(shù)據(jù)寫入 Excel 工作表

      處理大型數(shù)據(jù)集時,逐個單元格寫入效率很低。Spire.XLS 提供了直接插入數(shù)組和 DataTable 的方法,其他數(shù)據(jù)結(jié)構(gòu)可以先轉(zhuǎn)換為數(shù)組或 DataTable。

      寫入數(shù)組到 Excel

      使用 Worksheet.InsertArray方法,可以將一維或二維數(shù)組寫入指定區(qū)域:

      string[,] data = {
          { "姓名", "年齡", "國家" },
          { "張三", "30", "中國" },
          { "李四", "28", "中國" },
          { "王五", "35", "加拿大" }
      };
      
      sheet.InsertArray(data, 1, 1);

      效果圖:

      寫入 DataTable 到 Excel

      使用 InsertDataTable方法將 DataTable 數(shù)據(jù)導(dǎo)入到工作表:

      DataTable dt = new DataTable();
      dt.Columns.Add("ID", typeof(int));
      dt.Columns.Add("產(chǎn)品", typeof(string));
      dt.Columns.Add("價格", typeof(double));
      
      dt.Rows.Add(1, "筆記本電腦", 8999);
      dt.Rows.Add(2, "平板電腦", 5999);
      dt.Rows.Add(3, "手機", 6999);
      
      sheet.InsertDataTable(dt, true, 1, 1, true);

      效果圖:

      寫入 List 到 Excel

      雖然 Spire.XLS 沒有直接支持寫入 List 的方法,但你可以先將 List 轉(zhuǎn)換為 DataTable,再寫入 Excel。

      using Spire.Xls;
      using System.Data;
      
      namespace WriteListToExcel
      {
          class Program
          {
              static void Main(string[] args)
              {
                  // 創(chuàng)建一個工作簿實例
                  Workbook workbook = new Workbook();
      
                  // 移除默認工作表
                  workbook.Worksheets.Clear();
      
                  // 添加一個工作表并命名
                  Worksheet worksheet = workbook.Worksheets.Add("成績單");
      
                  // 創(chuàng)建一個學(xué)生數(shù)據(jù)列表
                  List<Student> students = new List<Student>
                  {
                      new Student("邁克爾", "約翰遜", 20, "計算機科學(xué)", 3.8),
                      new Student("莎拉", "威廉姆斯", 22, "數(shù)學(xué)", 3.6),
                      new Student("杰西卡", "布朗", 19, "物理", 3.9),
                      new Student("大衛(wèi)", "史密斯", 21, "化學(xué)", 3.7),
                      new Student("艾米莉", "戴維斯", 23, "生物", 3.5)
                  };
      
                  // 將列表轉(zhuǎn)換為數(shù)據(jù)表
                  DataTable dataTable = ConvertListToDataTable(students);
      
                  // 將數(shù)據(jù)表寫入工作表
                  worksheet.InsertDataTable(dataTable, true, 1, 1, true);
      
                  // 設(shè)置列寬
                  worksheet.AllocatedRange.ColumnWidth = 12;
      
                  // 內(nèi)容左對齊
                  worksheet.AllocatedRange.HorizontalAlignment = HorizontalAlignType.Left;
      
                  // 保存為Excel文件
                  workbook.SaveToFile("學(xué)生成績單.xlsx", ExcelVersion.Version2016);
      
                  // 釋放資源
                  workbook.Dispose();
              }
      
              static DataTable ConvertListToDataTable(List<Student> students)
              {
                  DataTable dataTable = new DataTable();
      
                  // 添加列
                  dataTable.Columns.Add("名字", typeof(string));
                  dataTable.Columns.Add("姓氏", typeof(string));
                  dataTable.Columns.Add("年齡", typeof(int));
                  dataTable.Columns.Add("專業(yè)", typeof(string));
                  dataTable.Columns.Add("績點", typeof(double));
      
                  // 添加行
                  foreach (var student in students)
                  {
                      DataRow row = dataTable.NewRow();
                      row["名字"] = student.FirstName;
                      row["姓氏"] = student.LastName;
                      row["年齡"] = student.Age;
                      row["專業(yè)"] = student.Major;
                      row["績點"] = student.GPA;
                      dataTable.Rows.Add(row);
                  }
      
                  return dataTable;
              }
          }
      
          class Student
          {
              public string FirstName { get; set; }
              public string LastName { get; set; }
              public int Age { get; set; }
              public string Major { get; set; }
              public double GPA { get; set; }
      
              public Student(string firstName, string lastName, int age, string major, double gpa)
              {
                  FirstName = firstName;
                  LastName = lastName;
                  Age = age;
                  Major = major;
                  GPA = gpa;
              }
          }
      }

      效果圖:

      保存和導(dǎo)出 Excel 文件

      寫入數(shù)據(jù)后,你需要保存或?qū)С?Excel 文件。Spire.XLS 支持多種格式(XLSX、CSV、PDF 等):

      // 保存為 XLSX
      workbook.SaveToFile("Output.xlsx", ExcelVersion.Version2016);
      
      // 保存為 CSV
      workbook.SaveToFile("Output.csv", ",", Encoding.UTF8);
      
      // 導(dǎo)出為 PDF
      workbook.SaveToFile("Output.pdf", FileFormat.PDF);

      在 Web 應(yīng)用中,還可以將文件保存到 MemoryStream:

      using (MemoryStream ms = new MemoryStream())
      {
          workbook.SaveToStream(ms, FileFormat.Version2016);
          // 可寫入到 ASP.NET Response
      }

      常見問題與解決方案

      1. 日期/時間格式錯誤

        • 問題:日期/時間顯示為序列號。
        • 解決辦法:設(shè)置正確的單元格格式。
      2. 數(shù)據(jù)覆蓋或錯位

        • 問題:數(shù)組或 DataTable 寫入時覆蓋現(xiàn)有數(shù)據(jù)。
        • 解決辦法:檢查 InsertArray/InsertDataTable 的起始行列參數(shù)。
      3. 大數(shù)據(jù)集寫入性能低

        • 問題:數(shù)千行寫入速度慢。
        • 解決辦法:使用批量寫入方法,避免逐單元格寫入。
      4. 公式未正確計算

        • 問題:寫入的公式未返回預(yù)期結(jié)果。
        • 解決辦法:檢查公式語法,必要時調(diào)用 workbook.CalculateAllValue()。

      總結(jié)

      在 C# 中實現(xiàn) Excel 寫入功能既直觀又高效。借助 Spire.XLS for .NET,無論是寫入單個數(shù)值、文本、日期,還是處理大規(guī)模結(jié)構(gòu)化數(shù)據(jù)集,都能輕松勝任。該庫不僅支持單元格樣式、公式計算、條件格式等高級功能,還能精準控制輸出效果,確保最終生成的 Excel 文件數(shù)據(jù)準確、外觀專業(yè)。

      通過數(shù)組或 DataTable 進行批量數(shù)據(jù)寫入,可大幅提升數(shù)據(jù)輸出效率,靈活應(yīng)對不同體量的數(shù)據(jù)導(dǎo)出需求。若你正在尋找一種穩(wěn)定、高效且無需依賴 Microsoft Excel 環(huán)境的文件生成方案,Spire.XLS for .NET 無疑是一個理想的技術(shù)選擇。

      Spire.XLS for .NET試用下載,請聯(lián)系E-iceblue Spire官方授權(quán)代理商慧都科技

      歡迎加入Spire技術(shù)交流Q群(125237868),與更多小伙伴一起提升文檔開發(fā)技能~

      常見問答(FAQs)

      Q1. 我能用 Spire.XLS 寫入已有的 Excel 文件嗎?

      可以。使用 workbook.LoadFromFile("file.xlsx") 打開文件,然后修改并保存。

      Q2. Spire.XLS 是否需要安裝 Microsoft Excel?

      不需要,它是一個獨立庫。

      Q3. Spire.XLS 能處理包含成千上萬行的大文件嗎?

      可以,它針對大數(shù)據(jù)集做了性能優(yōu)化。

      Q4. 寫入數(shù)據(jù)時如何設(shè)置單元格樣式?

      你可以通過以下方式設(shè)置字體、顏色、邊框和對齊方式:

      sheet.Range["A1"].Style.Font.IsBold = true;
      sheet.Range["A1"].Style.Color = Color.Yellow;
      sheet.Range["A1"].Style.HorizontalAlignment = HorizontalAlignType.Left;
      posted @ 2025-09-28 10:39  IT開發(fā)者筆記  閱讀(23)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产做爰xxxⅹ久久久精华液 | 任我爽精品视频在线播放 | 欧美大胆老熟妇乱子伦视频| 精品国产免费一区二区三区香蕉| 国产成人精品亚洲高清在线| 2019国产精品青青草原| 亚洲二区中文字幕在线| 亚洲欧美日韩久久一区二区| 国内精品伊人久久久久影院对白| 人妻精品久久无码专区涩涩| 免费又爽又大又高潮视频| 日韩大片高清播放器| 日韩欧美人妻一区二区三区| 国产精品国产高清国产一区| 好深好湿好硬顶到了好爽| 国内少妇偷人精品免费| 中文字幕精品亚洲字幕成| 99国产精品欧美一区二区三区 | 久久亚洲精品中文字幕波多野结衣| 老熟妇高潮一区二区三区| 日本夜爽爽一区二区三区| 99久久精品国产一区二区暴力 | 爱性久久久久久久久| 天天综合天天添夜夜添狠狠添 | 国产精品美女一区二区三| 乱人伦人妻中文字幕无码久久网| 宝兴县| japan黑人极大黑炮| 狠狠色综合久久狠狠色综合| 久久99国产精品久久99小说| 欧美亚洲熟妇一区二区三区| 国产果冻豆传媒麻婆精东| 国产香蕉久久精品综合网| 精品亚洲女同一区二区| 国产成人8X人网站视频| 久久天天躁狠狠躁夜夜2020老熟妇| 亚洲成在人线av无码| 人妻av无码系列一区二区三区| 国产高跟黑色丝袜在线| 久久国内精品一区二区三区| 欧美交a欧美精品喷水|