ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:20.69KB ,
资源ID:10407605      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10407605.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Excel工作表中如何导入txt文件.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Excel工作表中如何导入txt文件.docx

1、Excel工作表中如何导入txt文件Excel2017工作表中如何导入.txt文件篇一:SQL 将txt文件导入sql数据库就一句sql代码搞定,导入sql2000的代码。BULK INSERT 表名 FROM F:你的文本文件.txt WITH ( FIELDTERMINATOR =以什么符号分割数据,ROWTERMINATOR= 以什么符号加n结尾)-n是回车的意思,就是回车前面是什么符号,如果没符号直接单引号n例如:BULK INSERT bb FROM F:2008-02-18.txt WITH ( FIELDTERMINATOR =, ROWTERMINATOR= ,n)bb是表名,

2、f盘中的F:2008-02-18.txt文件, FIELDTERMINATOR =,每个数据是以逗号分隔的,ROWTERMINATOR= ,n每行数据以逗号回车结尾。我导入过很多次。使用BULK INSERT用法如下:stu.txt 结构1,Jim2,Kate3,Tom.BULK INSERT dbo.TABLE1FROM d:stu.txtWITH (FIELDTERMINATOR = ,ROWTERMINATOR = n)查看table1里的数据select * from table1就ok了。在做一些web数据库管理系统的时候经常要实现将帐户批量注册的功能,今天就来讲讲如何在C#-web

3、项目中将txt文件和excel文件导入 SQL2000数据库。1.数据库准备在SQL2000数据库的实例数据库pubs中建立一个数据表txtInsert,字段很简 单:id,name两个。2.txt文本文件导入对于数据文件导入与导出SQL2000提供了BULK INSERT和BCP语句,在这里可以使用BULK INSERT命令实现。假设在c盘上有一个文本文件stu.txt内容为:1,tom2,jack3,jhon实现导入的C#代码如下:protected System.Web.UI.HtmlControls.HtmlInputFile fName;protected System.Web.UI

4、.WebControls.Button BtnInsert;/上面两个控件自己添加代码private void BtnInsert_Click(object sender, System.EventArgs e)string fPath=this.fName.PostedFile.FileName;/获得要导入的文本文件string extName=fPath.Substring(fPath.LastIndexOf(.)+1);/获得文件的扩展名SqlConnection con=new SqlConnection(server=.;database=pubs;uid=sa;pwd=;);/数

5、据库连接对象con.Open();trySqlCommand com=new SqlCommand(BULK INSERT pubs.dbo.txtInsert FROM +fPath+ WITH (FIELDTERMINATOR = ,ROWTERMINATOR= n),con);/其中的 FIELDTERMINATOR=,指明字段间所使用的分隔符为逗号/其中 ROWTERMINATOR= n指明记录间所使用的分隔符为回车com.ExecuteNonQuery();Response.Write(script language=javascript& gt;alert(数据导入成功!);cat

6、ch (SqlException SQLexc)Response.Write(导入数据库时出错: + SQLexc.ToString();con.Close();好了,这个txt文件的导入相对简单,在数据库中我也没有设置主键,我在里面也没有加出错回滚事务操作,在下面的excel文件的导入中介绍。3.excel 文件的导入在c盘里建立一个stu.xls文件,在sheet1工作表中有两列数据如下:编号 姓名1 tom2 jack3 john注 意,工作表的第一行是作为标题行的不会被插入到数据库中,真正导入从第二行开始。为了演示事物出错回滚,在这里将txtInsert数据库表中的 id字段设置为主键

7、。实现的C#代码如下:代码private void BtnInsert_Click(object sender, System.EventArgs e)string fPath=this.fName.PostedFile.FileName;/获得要导入的文本文件string extName=fPath.Substring(fPath.LastIndexOf(.)+1);/获得文件的扩展名SqlConnection con=new SqlConnection(server=.;database=pubs;uid=sa;pwd=;);/数据库连接对象con.Open();/注意下面的连接字符串,是

8、它起到了导入的作用SqlCommand excelCmd=new SqlCommand(insert into txtInsert select * from OPENROWSET(MICROSOFT.JET.OLEDB.4.0,Excel 5.0;HDR=YES;DATABASE=+fPath+,Sheet1$),con);SqlTransaction myTran=con.BeginTransaction();/开始一个事务操作 excelCmd.Transaction=myTran;tryexcelCmd.ExecuteNonQuery();myTran.Commit();/提交事务Re

9、sponse.Write(script language=javascript& gt;alert(数据导入成功!);catch (SqlException err)myTran.Rollback(); /出错回滚事务操作/以下三行是去掉数据库出错信息中的非法字符单引号、回车和换行符,否则在使用时 javascript代码将有语法错误/因为js的编码和c#的编码不同string errString=err.Message.Replace(, );errString=errString.Replace(Convert.ToChar(13).ToString(),);errString=errSt

10、ring.Replace(Convert.ToChar(10).ToString(),);/显示出错信息框Response.Write(script language=javascript& gt;alert(导入数据库时出错!详细信息:+errString+);con.Close();这里“显示出错信息框”开始我没有田间那三行代码,结果搞了半天,最后还是在html文件中发现javascript代码部分出现了分行,老是提示“未结 束的字符串常量”,所以导致不能打开信息框,郁闷死我了,花了好多时间。4.将excel中部分列导入数据库的方法上面讲了关于将整个 excel文件导入数据库的方法,那么在

11、实际项目中遇到将excel文件中若干列导入数据库怎么办的呢,原理差不多,我就将代码直接给出了:代码stringfPath=this.fName.PostedFile.FileName;/获得要导入的文本文件string extName=fPath.Substring(fPath.LastIndexOf(.)+1);/获得文件的扩展名SqlConnection con=new SqlConnection(server=.;database=pubs;uid=sa;pwd=;);/数据库连接对象con.Open();string mystring=Provider = Microsoft.Jet.

12、OLEDB.4.0 ; Data Source = +fPath+;Extended Properties=Excel 8.0;OleDbConnection cnnxls = new OleDbConnection (mystring);OleDbDataAdapter myDa =new OleDbDataAdapter(select * from Sheet1$,cnnxls);DataSet myDs =new DataSet();myDa.Fill(myDs);if(myDs.Tables0.Rows.Count 0)string strSql = ;string CnnString

13、=Provider=SQLOLEDB;database=pubs;server=.;uid=sa;pwd=;OleDbConnection conn =new OleDbConnection(CnnString);conn.Open ();OleDbCommand myCmd =null; for(int i=0; imyDs.Tables0.Rows.Count;i+)/第一个工作表中行数,不包括第一行,strSql=insert into txtInsert(id,name) values (;strSql += myDs.Tables0.Rowsi.ItemArray0.ToString

14、() + , ;strSql += myDs.Tables0.Rowsi.ItemArray1.ToString() + );myCmd=new OleDbCommand(strSql,conn);trymyCmd.ExecuteNonQuery();Response.Write(script language=javascript& gt;alert(数据导入成功!);catch (OleDbException err)Response.Write(导入数据库时出错: +err.ToString();break;conn.Close();篇二:excel导入导出通用方法1. package

15、mon.utils;2. import java.io.OutputStream;3. import java.util.List;4. import javax.servlet.http.HttpServletResponse;5. import org.apache.struts2.ServletActionContext;6. import java.lang.reflect.Field;7.8. import jxl.Workbook;9. import jxl.format.Alignment;10. import jxl.format.Border;11. import jxl.f

16、ormat.BorderLineStyle;12. import jxl.format.VerticalAlignment;13. import jxl.write.Label;14. import jxl.write.WritableCellFormat;15. import jxl.write.WritableFont;16. import jxl.write.WritableSheet;17. import jxl.write.WritableWorkbook;18. /*19. * author lsf20. */21. public class ExportExcel 22. /*2

17、3.* param fileName EXCEL文件名称24.* param listTitle EXCEL文件第一行列标题集合25.* param listContent EXCEL文件正文数据集合26.* return27.*/28. public final static String exportExcel(String fileName,String Title, List listContent) 29.String result=系统提示:Excel文件导出成功!;30./ 以下开始输出到EXCEL31.try 32. /定义输出流,以便打开保存对话框_begin33. Http

18、ServletResponse response=ServletActionContext.getResponse();34. OutputStream os = response.getOutputStream();/ 取得输出流35. response.reset();/ 清空输出流36. response.setHeader(Content-disposition, attachment; filename=+ new String(fileName.getBytes(GB2312),ISO8859-1);37. / 设定输出文件头38. response.setContentType(

19、application/msexcel);/ 定义输出类型39. /定义输出流,以便打开保存对话框_end40.41. /* *创建工作簿* */42. WritableWorkbook workbook = Workbook.createWorkbook(os);43.44. /* *创建工作表* */45.46. WritableSheet sheet = workbook.createSheet(Sheet1, 0);47.48. /* *设置纵横打印(默认为纵打)、打印纸* */49. jxl.SheetSettings sheetset = sheet.getSettings();5

20、0. sheetset.setProtected(false);51.52.53. /* *设置单元格字体* */54. WritableFont NormalFont = new WritableFont(WritableFont.ARIAL, 10);55. WritableFont BoldFont = new WritableFont(WritableFont.ARIAL, 10,WritableFont.BOLD);56.57. /* *以下设置三种单元格样式,灵活备用* */58. / 用于标题居中59. WritableCellFormat wcf_center = new Wr

21、itableCellFormat(BoldFont);60. wcf_center.setBorder(Border.ALL, BorderLineStyle.THIN); / 线条61. wcf_center.setVerticalAlignment(VerticalAlignment.CENTRE); / 文字垂直对齐62. wcf_center.setAlignment(Alignment.CENTRE); / 文字水平对齐63. wcf_center.setWrap(false); / 文字是否换行64.65. / 用于正文居左66. WritableCellFormat wcf_le

22、ft = new WritableCellFormat(NormalFont);67. wcf_left.setBorder(Border.NONE, BorderLineStyle.THIN); / 线条68. wcf_left.setVerticalAlignment(VerticalAlignment.CENTRE); / 文字垂直对齐69. wcf_left.setAlignment(Alignment.LEFT); / 文字水平对齐70. wcf_left.setWrap(false); / 文字是否换行71.72.73. /* *以下是EXCEL开头大标题,暂时省略* */74.

23、/sheet.mergeCells(0, 0, colWidth, 0);75. /sheet.addCell(new Label(0, 0, XX报表, wcf_center);76. /* *以下是EXCEL第一行列标题* */77. for (int i = 0; i Title.length; i+) 78. sheet.addCell(new Label(i, 0,Titlei,wcf_center);79. 80. /* *以下是EXCEL正文数据* */81. Field fields=null;82. int i=1;83. for(Object obj:listContent

24、)84. fields=obj.getClass().getDeclaredFields();85. int j=0;86. for(Field v:fields)87.v.setAccessible(true);88.Object va=v.get(obj);89.if(va=null)90. va=;91.92.sheet.addCell(new Label(j, i,va.toString(),wcf_left);93.j+;94. 95. i+;96. 97. /* *将以上缓存中的内容写到EXCEL文件中* */98. workbook.write();99. /* *关闭文件* *

25、/100. workbook.close();101.102. catch (Exception e) 103. result=系统提示:Excel文件导出失败,原因:+ e.toString();104. System.out.println(result);105. e.printStackTrace();106.107.return result;108. 109. 3.通用导出:java view plaincopy1. package mon.excel.parser;2.3.4. import java.io.FileOutputStream;5. import java.io.O

26、utputStream;6. import java.lang.reflect.Field;7. import java.lang.reflect.Method;8. import java.util.ArrayList;9. import java.util.Collection;10. import java.util.Date;11. import java.util.HashMap;12. import java.util.Iterator;13. import java.util.List;14. import java.util.Map;15.16.17. import org.a

27、pache.poi.hssf.usermodel.HSSFRichTextString;18. import org.apache.poi.hssf.usermodel.HSSFWorkbook;19. import org.apache.poi.ss.usermodel.Cell;20. import org.apache.poi.ss.usermodel.RichTextString;21. import org.apache.poi.ss.usermodel.Row;22. import org.apache.poi.ss.usermodel.Sheet;23. import org.a

28、pache.poi.ss.usermodel.Workbook;24.25.26. import com.huateng.test.pojo.Student;27.28.29. public class ExcelExport2 30.31.32. public static void exportExcel(String title, Class pojoClass,Collection dataSet,33.34. /使用userModel模式实现的,当excel文档出现10万级别的大数据文件可能导致OOM内存溢出35.36. /使用eventModel实现,可以一边读一边处理,效率较高,但是实现复杂,暂时未实现37.38. private static void exportExcelInUserModel(String title, Class pojoClass,Collection dataSet,39.40. try 41. / 首先检查数据看是否是正确的42. if (dataSet = null | dataSet.size()=0) 43. throw new Exception(导出数据为空!);44.45. if(title = null | out = null | pojoClass = null)4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1