C# 通过OLEDB创建不带标题的Excel工作簿
我有一个C#程序要写到Excel,它支持没有标题的文件和有标题的文件 如果我在需要标题的地方写,这很好,但是在读取没有标题的文件的情况下,我想写一个没有标题的表。如果我使用相同的标题创建一个表,我仍然会在内容中得到F1、F2、F3等 我要编写的连接字符串是:- Provider=Microsoft.Jet.OLEDB.4.0;数据源=文件名;扩展属性=“Excel 8.0;HDR=No;IMEX=0;”C# 通过OLEDB创建不带标题的Excel工作簿,c#,excel,oledb,C#,Excel,Oledb,我有一个C#程序要写到Excel,它支持没有标题的文件和有标题的文件 如果我在需要标题的地方写,这很好,但是在读取没有标题的文件的情况下,我想写一个没有标题的表。如果我使用相同的标题创建一个表,我仍然会在内容中得到F1、F2、F3等 我要编写的连接字符串是:- Provider=Microsoft.Jet.OLEDB.4.0;数据源=文件名;扩展属性=“Excel 8.0;HDR=No;IMEX=0;” 关于如何丢失标题有什么想法吗?这个问题现在有点老了,但下面是我如何回答另一个类似问题的: 这
关于如何丢失标题有什么想法吗?这个问题现在有点老了,但下面是我如何回答另一个类似问题的: 这并不漂亮,但这是我发现的创建新工作表的唯一方法,其中没有任何内容。我发现的唯一问题是Oledb会在CREATE命令中指定的头单元格上自动创建一个命名区域,但假设您不关心这个问题,那么这应该可以正常工作
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName +
";Mode=ReadWrite;Extended Properties=\"Excel 8.0;HDR=NO\"";
using (OleDbConnection conn = new OleDbConnection(connectionString))
{
conn.Open();
using (OleDbCommand cmd = new OleDbCommand())
{
cmd.Connection = conn;
cmd.CommandText = "CREATE TABLE [MySheet] (a string)"; // Doesn't matter what the field is called
cmd.ExecuteNonQuery();
cmd.CommandText = "UPDATE [MySheet$] SET F1 = \"\"";
cmd.ExecuteNonQuery();
}
conn.Close();
}
可能重复的