c#当字符串数据超过255个字符时插入Excel时出错

我试图将一些数据导出到Excel.我正在使用OLEDB 12.连接字符串如下所示:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 8.0;HDR=YES;'"

我使用INSERT查询.但是只要目标列中的数据超过255个字符,我就会得到一个例外.

Exception Details: System.Data.OleDb.OleDbException: The field is too small to accept the amount of data you attempted to add. Try inserting or pasting less data.

在SO:Excel unable to insert more than 255 chars?上有一个类似的帖子,但它没有进入c#,

我也提到了http://support.microsoft.com/kb/213841而没有得到任何解决方案.

请帮忙.

解决方法

我最初认为你可以在写入数据之前定义单元格的数据类型(备忘录/文本),但是从这篇文章 http://support.microsoft.com/kb/278973中看不出这种情况(大约有一半的时间明确地说明了定义数据类型) excel是不可能的.)

我能为您提供的“最佳”解决方案是将您的数据切割成255个字符,并将它们插入到excel文件中的nieghbouring列中.从那里你可以使用一些excel互操作将它们拼接在一起.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...