亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

【好文翻譯】測試必看:使用Spire.XLS來生成自動化報表!

2019-11-17 03:06:33
字體:
來源:轉載
供稿:網友
【好文翻譯】測試必看:使用Spire.XLS來生成自動化報表!Download C# PRoject - 7.1 KB介紹在我的編程博客中,我經常會比較不同算法或原理的性能特征。我常常會把性能日志(如花費時間)輸出到控制臺或者文本文件,然后復制到電子表格中加以分析。但是最近,我發現一個新方法:我可以使用Spire.XSL類庫來生成最終的電子表格--包含所有的表格和圖表!接下來我將講講如何使用這個類來完成各種自動化任務。案例我們的目標是創建一個基準測試程序,用于測試三種不同的排序算法。我們為不同的算法所花費的時間計數。下面是簡單的代碼:
abstract class PerfTestBase { public double ElapsedTimeSec {get; protected set;} public string Name {get; protected set;} public abstract void run(int n); } class BubbleSortPerfTest : PerfTestBase { public BubbleSortPerfTest() { Name = "Bubble Sort"; } public override void run(int n) { // 實現部分ElapsedTimeSec = X; } } class MergeSortPerfTest : PerfTestBase { public MergeSortPerfTest() { Name = "Merge Sort"; } public override void run(int n) { // 實現部分 ElapsedTimeSec = X; } } class QuickSortPerfTest : PerfTestBase { public QuickSortPerfTest() { Name = "Quick Sort"; } public override void run(int n) { // 實現部分ElapsedTimeSec = X; } } 

算法已經準備好了,現在我們需要運行它們并加入不同的啟動參數。

List<PerfTestBase> perfTests = new List<PerfTestBase> { new BubbleSortPerfTest(), new MergeSortPerfTest(), new QuickSortPerfTest() }; // N 從 10 加到 200, 每次增長 10 var res = runAllTests(perfTests, 10, 200, 10); printResults(res); 

runAllTests這個功能只需通過設置N的值就能容易的進行循環迭代,調用 .run(N)方法。最有意思的部分,是printResults方法部分。哪些代碼可以自動生成報表和有價值的結果呢?

最簡單解決方案

最開始時,當然我們可以將它打印到控制臺。我們甚至可以使用CSV格式,然后輕松地把結果復制到電子表格里。

N;Bubble Sort;Merge Sort;Quick Sort;

10;20,00;140,46;96,71;

20;80,00;365,48;251,64;

過一段時間,當你不斷地修改你的算法代碼,復制結果的工作就顯得乏味無比。當然,必須要有一個更快,更好的方法。如果我們不生成CSV文件,而是直接生成Excel文件呢?現在應該介紹一下 Spire.XLS 類庫了。

Spire.XLS 類庫介紹

E-IceBlue的Spire.XSL 是一個功能強大,易于使用的類庫,它另office的自動化操作變得非常容易。很多世界500強的企業都在使用它,這個品牌是受人尊敬和眾所周知的。

簡要概述:首先在你的項目中添加對Spire.XLS的引用。接下來你就可以創建、打開、修改、運行所有計算,而不需要安裝excel或者office。

這一類庫與Excel 97/2003, 2007 and 2010完全兼容。

另外,Spire.XLS還可以保護、加密文件,更厲害的,它還能轉換格式。例如,你可以把你的文件轉換成PDF、圖像或者HTML文件。

這一解決方案使我們創建有價值的自動化程序變得非常簡單。

在代碼中使用Spire.XSL

在我們的例子中,我們只使用了這個強大類庫功能中的1%。即使這樣,它已經可以節省大量的生成報表的時間了。

基本使用

添加引用:

using Spire.Xls; using Spire.Xls.Charts; 

四行代碼創建'Hello World' 工作簿:

Workbook wb = new Workbook(); Worksheet sheet = wb.Worksheets[0]; sheet.Range["A1"].Text = "Hello,World!"; wb.SaveToFile("Sample.xls", ExcelVersion.Version2007); 

上述代碼可以讓我們了解怎樣使用這一類庫。基本上你可以很容易地操作工作簿、工作表和單元格。

改進的解決方案

讓我們回到開頭描述的問題。我們的新解決方案將保留輸出到控制臺部分,但是我們直接將結果保存成excel文件。除此之外,我們還可以創建圖表。這種方式將節省很多時間--不需要一遍遍地復制和生成圖表。。。下面是保存數據相關的代碼片段:

Worksheet sheet = workbook.Worksheets[0]; sheet.Name = "Perf Test"; sheet.Range["A1"].Text = "Elapsed Time for sorting..."; sheet.Range["A1"].Style.Font.IsBold = true; // 列標題: sheet.Range["C3"].Text = "N"; sheet.Range["C3"].Style.Font.IsBold = true; sheet.Range["C3"].Style.HorizontalAlignment = HorizontalAlignType.Center; char col = 'D'; foreach (var n in res.Map.Keys) { sheet.Range[col+"3"].Text = n; sheet.Range[col+"3"].Style.Font.IsBold = true; sheet.Range[col+"3"].Style.HorizontalAlignment = HorizontalAlignType.Center; col++; } // 將數據插入行...

接下來是生成圖表部分代碼:

Chart chart = sheet.Charts.Add(); //設置圖表數據區域chart.DataRange = workbook.Worksheets[0].Range[range]; chart.SeriesDataFromRange = false; //設置圖表位置chart.LeftColumn = 2; chart.TopRow = 2; chart.RightColumn = 12; chart.BottomRow = 30; //圖表標題chart.ChartTitle = "Sorting Time..."; chart.ChartTitleArea.IsBold = true; chart.ChartTitleArea.Size = 12; // ... chart.Legend.Position = LegendPositionType.Bottom; chart.ChartType = ExcelChartType.ScatterSmoothedLineMarkers; 

看,就這么簡單!我特別喜歡的一點,就是我們可以得到一個單元格,或者整個區域??纯匆淖円粋€單元格的樣式有多么簡單。下圖是最終的excel文件,當然是自動生成的:

還有圖表:

使用Spire.XLS的好處

  • 很多種方式來自動完成你的任務 - 無需安裝office
  • 良好完整的文檔
  • 易于使用:只需要下載,然后修改你的代碼,在安裝和編譯中毫無問題。
  • 免費版也足夠使用
  • 多家500強企業使用

總結

在本文中,我展示了我們可以通過程序自動化地生成性能報表。通過使用Spire.XLS,碼農們可以在不要求安裝office的情況下創建和操作Excel文件。這是一個非常強大的類庫,而且非常非常容易使用。我們創建報表的工作可以通過短短幾行代碼自動化地實現。另外,Spire.DOC或者Spire.PDF也是非常好的類庫。

附注和鏈接

  • 性能:在這里看他們的與OLE性能比較測試, 看起來Spire.XLS要比OLE方式強很多.
  • 這里是他們的快速上手手冊
  • 這一類庫是為.net設計的,但是在本機代碼中也可以使用同樣的解決方案。我需要測試時,我們可以創建一個"橋",然后從C++程序中調用.net類庫。C++程序可以完美運行,但是所有的報表是通過.net模塊調用Spire.XLS來生成的。

原文:http://www.codeproject.com/Articles/783414/Automated-Reports-with-Spire-XLS


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97香蕉久久夜色精品国产| 国产精品黄页免费高清在线观看| 国产精品18久久久久久首页狼| 国产亚洲精品久久久| 久久艳片www.17c.com| 精品调教chinesegay| 国产精品精品一区二区三区午夜版| 精品福利在线看| 久久精品亚洲精品| 欧美精品性视频| 国产成人拍精品视频午夜网站| 亚洲精品国产综合久久| 日韩视频精品在线| 欧美黑人一级爽快片淫片高清| 91高潮精品免费porn| 亚洲专区国产精品| 狠狠色噜噜狠狠狠狠97| 一区二区三区回区在观看免费视频| 国产深夜精品福利| 亚洲黄一区二区| 欧美电影在线观看高清| 欧美日韩亚洲精品一区二区三区| 国产视频综合在线| 91精品国产99| 国产精品偷伦一区二区| 国产成人在线播放| 国产精品久久99久久| 91在线中文字幕| 这里只有精品在线观看| 粉嫩av一区二区三区免费野| 国产欧美最新羞羞视频在线观看| 久久精品91久久久久久再现| 插插插亚洲综合网| 日韩电影在线观看永久视频免费网站| 成人欧美在线观看| 亚洲欧洲xxxx| 国产国语videosex另类| 欧美中文字幕视频| 日韩一区二区三区在线播放| 久久天天躁狠狠躁夜夜av| 日本91av在线播放| 欧美性猛交xxxx免费看漫画| 国产精品偷伦视频免费观看国产| 91精品在线国产| 久久免费视频在线| 69视频在线播放| 中文字幕亚洲二区| 日韩欧美aaa| 国产婷婷成人久久av免费高清| 亚洲精品理论电影| 久久精品在线播放| 黄色成人在线播放| 国产综合在线视频| 97热在线精品视频在线观看| 国产精品成人va在线观看| 欧美在线视频观看免费网站| 日韩av电影在线播放| 亚洲成人中文字幕| 国产成人亚洲综合91精品| 精品精品国产国产自在线| 欧美日韩国产色视频| 国产精品∨欧美精品v日韩精品| 久久久久日韩精品久久久男男| 久久亚洲一区二区三区四区五区高| 欧美国产日韩一区二区三区| 欧美国产日韩免费| 亚洲加勒比久久88色综合| 2019中文在线观看| 亚洲美女av在线播放| 亚洲国产精品一区二区久| 亚洲欧美成人在线| 亚洲福利视频网站| 久久激情视频久久| 久久精品2019中文字幕| 亲子乱一区二区三区电影| 国产成人精品av在线| 精品视频中文字幕| 91九色国产社区在线观看| 成人av资源在线播放| 欧美大尺度电影在线观看| 欧美激情精品久久久久久免费印度| 午夜精品一区二区三区在线视频| 91经典在线视频| 狠狠久久五月精品中文字幕| 亚洲第一av网站| 久久精品免费电影| 亚洲一区二区三| 国产精品一区二区久久国产| 欧美激情一级精品国产| 亚洲欧美中文日韩v在线观看| 国产一区二区成人| 国产一区二区三区在线视频| 欧美在线观看网址综合| 色樱桃影院亚洲精品影院| 高清一区二区三区日本久| 久久亚洲国产精品成人av秋霞| 国产精品久久久久久久久久东京| 亚洲黄色www网站| 国内精品在线一区| 久久精品青青大伊人av| 久久精品国产视频| 日韩精品在线视频美女| 最好看的2019的中文字幕视频| 日韩av电影在线播放| 91在线视频成人| 欧美小视频在线观看| 亚洲人免费视频| 日韩电影大全免费观看2023年上| 91在线视频九色| 欧美精品在线免费| 国产视频观看一区| 亚洲国产精品福利| 日韩av在线不卡| 一个色综合导航| 日本中文字幕不卡免费| 亚洲第一天堂无码专区| 久久久视频免费观看| 久久久爽爽爽美女图片| 亚洲国产精品久久91精品| 97超碰蝌蚪网人人做人人爽| 亚洲成人av在线播放| 亚洲成人国产精品| 色久欧美在线视频观看| 国产精品免费电影| 欧美日韩免费一区| 亚洲va码欧洲m码| 亚洲精品一区二区久| 91高清免费视频| 欧美亚洲在线播放| 亚洲欧美激情视频| 欧美日韩中文字幕综合视频| 日韩亚洲欧美中文高清在线| 欧美电影免费观看高清完整| 精品久久久中文| 国产精品久久久久久影视| 欧美亚洲日本黄色| 亚洲成色999久久网站| 国产精品丝袜视频| 成人欧美一区二区三区黑人| 精品成人乱色一区二区| 精品久久久久久亚洲精品| 亚洲精品国产精品国自产观看浪潮| 午夜精品理论片| 欧美特黄级在线| 久久综合伊人77777蜜臀| 国产婷婷97碰碰久久人人蜜臀| 国产性色av一区二区| 日本国产精品视频| 亚洲成av人影院在线观看| 日产精品久久久一区二区福利| 午夜精品美女自拍福到在线| 中文字幕精品一区二区精品| 亚洲欧美中文字幕| 91精品在线观看视频| 欧美中在线观看| 亚洲专区国产精品| 日韩成人高清在线| 97在线看免费观看视频在线观看| 久久视频在线播放| 国产精品久久久久7777婷婷| 日韩中文理论片| 日韩a**站在线观看| 亚洲欧美日韩爽爽影院| 九九精品在线播放|