本质是将html写成word或excel支持的html格式。

如何将html写成word或excel支持的格式?

只需打开计算机上任意一个word或excel文档,打开文件->另存为,选择文件类型为“*.htm,*.html”格式,即将一篇word转化为html格式文件。

在浏览器中打开该文件,查看源码,即可看到转化后的html文档。

只需参照此文档内容,将html写成该格式,然后将html内容写入到文件中,把文件后缀名改为“.xls”或“.doc”即可。

  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7.  
  8. namespace ConsoleApplication1
  9. {
  10. class Program
  11. {
  12. /// <summary>
  13. /// 导出到excel
  14. /// </summary>
  15. /// <returns></returns>
  16. public static void exportExcel() {
  17. string HEADER = "<html xmlns:x=\"urn:schemas-microsoft-com:office:excel\">" +
  18. "<meta http-equiv=Content-Type content=\"text/html; charset=\"gb2312\">" +
  19. "<head>" +
  20. "<!--[if gte mso 9]><xml>" +
  21. "<x:ExcelWorkbook>" +
  22. "<x:ExcelWorksheets>" +
  23. "<x:ExcelWorksheet>" +
  24. "<x:Name>工作表标题</x:Name>" +
  25. "<x:WorksheetOptions>" +
  26. "<x:Print>" +
  27. "<x:ValidPrinterInfo />" +
  28. "</x:Print>" +
  29. "</x:WorksheetOptions>" +
  30. "</x:ExcelWorksheet>" +
  31. "</x:ExcelWorksheets>" +
  32. "</x:ExcelWorkbook>" +
  33. "</xml>" +
  34. "<![endif]-->" ;
  35.  
  36. string STYLE="<style type=\"text/css\">" +
  37. ".spercent" +
  38. " {" +
  39. " background-color:#ffff99;" +
  40. " mso-number-format:0.00%;" +
  41. " }" +
  42. ".sId" +
  43. " {" +
  44. " background-color:#ff6633;" +
  45. " mso-number-format:0;" +
  46. " }" +
  47. ".sName" +
  48. " {" +
  49. " color:red;" +
  50. " }" +
  51. ".sValue" +
  52. " {" +
  53. " color:blue;" +
  54. " mso-number-format:0;" +
  55. " }" +
  56. "</style>";
  57.  
  58. using (StreamWriter writer = new StreamWriter(@"C:\Users\linghuam\Desktop\1111.xls", true, System.Text.Encoding.GetEncoding("gb2312"), ))
  59. {
  60. writer.WriteLine(HEADER);
  61. writer.WriteLine(STYLE);
  62. writer.WriteLine("</head><body><table border=\"1\" style=\"font-size:9pt\"><tr>");
  63. writer.WriteLine("<th>ID</th>");
  64. writer.WriteLine("<th>Name</th>");
  65. writer.WriteLine("<th>Value</th>");
  66. writer.WriteLine("<th>Percent</th>");
  67.  
  68. for (int row = ; row < ; row++)
  69. {
  70. writer.WriteLine("<tr>");
  71. writer.WriteLine("<td class=\"sId\">{0}</td>", row);
  72. writer.WriteLine("<td class=\"sName\">{0}</td>", Guid.NewGuid().ToString());
  73. writer.WriteLine("<td class=\"sValue\">{0}</td>", new Random().Next());
  74. writer.WriteLine("<td class=\"spercent\">{0}</td>", new Random().NextDouble());
  75. writer.WriteLine("</tr>");
  76. }
  77.  
  78. writer.WriteLine("</table></body>");
  79. }
  80. }
  81. /// <summary>
  82. /// 导出到word
  83. /// </summary>
  84. /// <returns></returns>
  85.  
  86. public static bool exportWord() {
  87. string html = "<html xmlns:v=\"urn:schemas-microsoft-com:vml\"xmlns:o=\"urn:schemas-microsoft-com:office:office\"xmlns:w=\"urn:schemas-microsoft-com:office:word\"xmlns:m=\"http://schemas.microsoft.com/office/2004/12/omml\"xmlns=\"http://www.w3.org/TR/REC-html40\"> <head> <![endif]><!--[if gte mso 9]><xml> <x:ExcelWorkbook> <x:ExcelWorksheets> <x:ExcelWorksheet> <x:Name>gis</x:Name> <x:WorksheetSource/> </x:ExcelWorksheet> </x:ExcelWorksheets> <x:ProtectStructure>False</x:ProtectStructure> <x:ProtectWindows>False</x:ProtectWindows> </x:ExcelWorkbook> </xml><![endif]--> <meta http-equiv=Content-Type content=\"text/html; charset=gb2312\"> <meta name=ProgId content=Word.Document> <meta name=Generator content=\"Microsoft Word 15\"> <meta name=Originator content=\"Microsoft Word 15\"> <style> div{background:rgba(255,0,0,0.5); } p{color: blue; font-size: 22px; font-weight: bolder; } h1{color: rgb(125,125,125); width: 100%; height: 100%; padding: 20px; background:rgb(66,89,224); } </style> </head> <body> <div> <p>I am chinese!</p> <h1>我发发非法上访</h1> </div> </body> </html>";
  88. using (StreamWriter writer = new StreamWriter(@"C:\Users\linghuam\Desktop\1111.doc", true, System.Text.Encoding.GetEncoding("gb2312"), ))
  89. {
  90. writer.WriteLine(html);
  91. return true;
  92. }
  93. return false;
  94. }
  95. static void Main(string[] args)
  96. {
  97. exportExcel();
  98. exportWord();
  99. }
  100. }
  101. }

将html导出到excel或word的更多相关文章

  1. asp.net教程:GridView导出到Excel或Word文件

    asp.net教程:GridView导出到Excel或Word文件</ br> 在项目中我们经常会遇到要求将一些数据导出成Excel或者Word表格的情况,比如中国移动(我是中国移动用户) ...

  2. ASP.NET-GridView之导出excel或word

    在CS阶段我们涉及到表格的导出,再Web开发同样可以实现,而且实现形式多种多样.以下面的例子说明表格导出到excel和word 这里用到了一个后台方法输出流形成***文件的的公共方法 DEMO < ...

  3. HTML页面的导出,包括Excel和Word导出

    //导出到Excel --- 全部导出,可以设置一些隐藏进行导出 protected void btnExport_Click(object sender, EventArgs e)    {     ...

  4. 无插件,无com组件,利用EXCEL、WORD模板做数据导出(一)

    本次随笔主要讲述着工作中是如何解决数据导出的,对于数据导出到excel在日常工作中大家还是比较常用的,那导出到word呢,改如何处理呢,简单的页面导出问题应该不大,但是如果是标准的公文导出呢,要保证其 ...

  5. RDLC - 后台代码直接导出Excel/PDF/Word格式

    最近做报表功能,用到了.net的报表组件rdlc. 其中有个功能就是后台代码直接输出Excel/PDF/Word格式的文件,网上看了些资源,做个总结: 参考地址 我直接贴出代码: //自动导出exce ...

  6. EasyOffice-.NetCore一行代码导入导出Excel,生成Word

    简介 Excel和Word操作在开发过程中经常需要使用,这类工作不涉及到核心业务,但又往往不可缺少.以往的开发方式在业务代码中直接引入NPOI.Aspose或者其他第三方库,工作繁琐,耗时多,扩展性差 ...

  7. js将HTML中table导出到EXCEL word (只支持IE) 另用php 配合AJAX可以支持所有浏览器

    转载请注明来源:https://www.cnblogs.com/hookjc/ <HTML>     <HEAD>       <title>WEB页面导出为EXC ...

  8. asp.net 将word文档进行编辑并导出一个新的word

    最近做项目,需要多word文档进行编辑并导出一个新的word,在最初的word编辑中留下特定的字符串用来替换,然后在本地生成一个新的word文档,并且不修改服务器中的word文档,这样才能保证服务器中 ...

  9. 使用NPOI读写Excel、Word

    NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 ...

随机推荐

  1. Oracle 11g XML java连接

    在网上找了好多教程 走好好多弯路 现在从头总结下 oralce11g 可以直接用xmltype节点存储xml文件 简单来说就是直接存一个文件进去 首先安装oracle11g 网上教程非常多 然后进Ne ...

  2. 实现html元素跟随touchmove事件的event.touches[0].clientX移动

    主要是使用了transform:translateX 实现 <!DOCTYPE html> <html lang="en"> <head> &l ...

  3. 《HTML5经典坦克大战》游戏(代码)

    前几天粗略地学了HTML5,然后就用它写了一个<经典坦克大战>游戏. 现在想分享一下我写的代码,写得不好请大家多多指教. 给大家推荐一个网站,这个网站是为大学生而做,为方便学习编程的同学而 ...

  4. Javascript中的var_dump函数

    最近在做基于OpenSocial的应用,在调试JavaScript时候有一个很头大的问题,就是没有类似PHP的var_dump()的函数,可以把变数内的资料印出来看看, debug时就只能不断的doc ...

  5. Python 变量有效范围

  6. caffe绘制训练过程的loss和accuracy曲线

    转自:http://blog.csdn.net/u013078356/article/details/51154847 在caffe的训练过程中,大家难免想图形化自己的训练数据,以便更好的展示结果.如 ...

  7. 转:从BeagleBone谈AM335x硬件系统设计

    链接:http://blog.chinaunix.net/uid-730738-id-3266690.html    作者:chenzhufly 从BeagleBone谈AM335x硬件系统设计 日期 ...

  8. android 反编译操作

    1:首先将apk程序解压: 2:将classes.dex反编译为jar包:$ ./dex2jar/dex2jar.sh classes.dex 将生成一个新的文件classes_dex2jar.jar ...

  9. Spinner 实现key value 效果

    在使用Spinner进行下拉列表时,我们一般都会使用字符串数组的方式加ArrayAdapter,取到的列表值就是我们所看到的Text.如果我们想实现网页中select <option value ...

  10. Android 之 Window、WindowManager 与窗口管理

    其实在android中真正展示给用户的是window和view,activity在android中所其的作用主要是处理一些逻辑问题,比如生命周期的管理.建立窗口等.在android中,窗口的管理还是比 ...