Winform技巧:TreeView导入Excel

Winform技巧:TreeView导入Excel

大家好,又见面了,我是全栈君。

Winform技巧:TreeView导入Excel
将如上效果导入到Excel中,效果如:
Winform技巧:TreeView导入Excel
原理:先将数据按照你想要的表格效果做成DataTable,然后在导入到Excel中
做成DataTable的方法:
Code
第53行为导入到Excel的公共类,SaveAS是导入的具体方法
Code

InBlock.gif 1 
using System; 


InBlock.gif 2 
using System.Collections.Generic; 


InBlock.gif 3 
using System.ComponentModel; 


InBlock.gif 4 
using System.Data; 


InBlock.gif 5 
using System.Drawing; 


InBlock.gif 6 
using System.Text; 


InBlock.gif 7 
using System.Windows.Forms; 


InBlock.gif 8 
using System.IO; 


InBlock.gif 9    


InBlock.gif10 
namespace 教务管理系统 


InBlock.gif11 { 


InBlock.gif12         
class DGVToExcel 


InBlock.gif13         { 


InBlock.gif14                 
public 
void SaveAs(DataTable dt) 
//另存新档按钮     导出成Excel 


InBlock.gif15                 { 


InBlock.gif16                         
try 


InBlock.gif17                         { 


InBlock.gif18                                 SaveFileDialog saveFileDialog = 
new SaveFileDialog(); 


InBlock.gif19                                 saveFileDialog.Filter = 
“Execl files (*.xls)|*.xls”


InBlock.gif20                                 saveFileDialog.FilterIndex = 0; 


InBlock.gif21                                 saveFileDialog.RestoreDirectory = 
true


InBlock.gif22                                 saveFileDialog.CreatePrompt = 
true


InBlock.gif23                                 saveFileDialog.Title = 
“导出Excel到”


InBlock.gif24                                 
if(saveFileDialog.ShowDialog()==DialogResult.OK) 


InBlock.gif25                                 { 


InBlock.gif26                                 Stream myStream; 


InBlock.gif27                                 myStream = saveFileDialog.OpenFile(); 


InBlock.gif28                                 StreamWriter sw = 
new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0)); 


InBlock.gif29                                 
string str = “”; 


InBlock.gif30                                 
try 


InBlock.gif31                                 { 


InBlock.gif32                                         
//写标题 


InBlock.gif33                                        


InBlock.gif34                                                 str +=dt.TableName; 


InBlock.gif35                                         sw.WriteLine(str); 


InBlock.gif36                                         
//写内容 


InBlock.gif37                                         
for (
int j = 0; j < dt.Rows.Count; j++) 


InBlock.gif38                                         { 


InBlock.gif39                                                 
string tempStr = “”; 


InBlock.gif40                                                 
for (
int k = 0; k < dt.Columns.Count; k++) 


InBlock.gif41                                                 { 


InBlock.gif42                                                         
if (k > 0) 


InBlock.gif43                                                         { 


InBlock.gif44                                                                 tempStr += 
“\t”


InBlock.gif45                                                         } 


InBlock.gif46                                                         tempStr += dt.Rows[j][k].ToString(); 


InBlock.gif47                                                 } 


InBlock.gif48                                                 sw.WriteLine(tempStr); 


InBlock.gif49                                         } 


InBlock.gif50                                         sw.Close(); 


InBlock.gif51                                         myStream.Close(); 


InBlock.gif52                                 } 


InBlock.gif53                                 
catch 


InBlock.gif54                                 { 


InBlock.gif55    


InBlock.gif56                                 } 


InBlock.gif57                                 
finally 


InBlock.gif58                                 { 


InBlock.gif59                                         sw.Close(); 


InBlock.gif60                                         myStream.Close(); 


InBlock.gif61                                 } 


InBlock.gif62                                 } 


InBlock.gif63                         } 


InBlock.gif64                         
catch 


InBlock.gif65                         { } 


InBlock.gif66                 }            


InBlock.gif67    


InBlock.gif68         } 


InBlock.gif69 } 


InBlock.gif70

此功能的实现需要一个.dll文件,文件全称为:Interop.Excel.dll,加载到你的项目中即可。
本文转自叶子文文博客51CTO博客,原文链接http://blog.51cto.com/leafwf/185798如需转载请自行联系原作者

叶子文文
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108014.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 《畅玩NAS》家庭 NAS 服务器搭建方案「建议收藏」

    《畅玩NAS》家庭 NAS 服务器搭建方案「建议收藏」NAS(NetworkAttachedStorage:网络附属存储)按字面简单说就是连接在网络上,具备资料存储功能的装置,因此也称为“网络存储器”。它是一种专用数据存储服务器。它以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽、提高性能、降低总拥有成本、保护投资。其成本远远低于使用服务器存储,而效率却远远高于后者。目前国际著名的NAS企业有Netapp、EMC、OUO等。说白话,就是家用的服务器。首选谈谈家庭NAS服务器的基本需求:1.7*24小时运行,最好有UPS电源保护

    2022年6月22日
    79
  • linux开启ssh命令(linux开启端口命令)

    在使用SSH时,经常会出现用sshsecureshellclient连接linux连接不上:解决方法如下: 如果没安装ssh,其安装过程:1.以root身份登入系统(没登入系统和没有足够的权限都不能安装,晕,这不是废话)2.检查安装系统时是否已经安装SSH服务端软件包: rpm-qa|grepopenssh 若显示结果中包含openssh-serve

    2022年4月14日
    383
  • 《Cisco ASA设备使用指南(第3版)》一2.13 Cisco Catalyst 6500系列ASA服务模块

    《Cisco ASA设备使用指南(第3版)》一2.13 Cisco Catalyst 6500系列ASA服务模块

    2022年3月2日
    38
  • python 文件路径名,文件名,后缀名的操作

    python 文件路径名,文件名,后缀名的操作需要使用路径名来获取文件名,目录名,绝对路径等等。使用os.path模块中的函数来操作路径名。下面是一个交互式例子来演示一些关键的特性:对于任何的文件名的操作,你都应该使用os.path模块,

    2022年7月5日
    26
  • 怎么查合适的软件测试外包公司?

    怎么查合适的软件测试外包公司?为什么选择测试外包 1 节约企业开发成本 企业在进行软件研发时 已经投入了大量的人力物力成本进行 如果测试工作仍然由企业自行承担的话 无疑会增加企业在测试上的人力和资源开发成本 而很多测试外包公司已经有现成的资源可以利用 何乐而不为呢 2 提升企业产品质量 通过测试外包进行功能 性能测试 能够帮助企业全面度量产品质量 从而在激烈的软件产品竞争市场上提高竞争力 实现更快速的发展 怎么查合适的软件测试外包公司 如果企业选择加软件测试工作外包给别的机构来做 最关键的一点就是寻找合适的软件测试外包公司了

    2025年10月9日
    4
  • oracle11g下载地址_如何安装oracle10g数据库

    oracle11g下载地址_如何安装oracle10g数据库OracleDatabase10gRelease2(10.2.0.1.0)Enterprise/StandardEditionforMicrosoftWindows(32-bit)http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.ziphttp://download.ora

    2022年8月30日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号