1.在c中编写的程序怎么样把数据输出到excel表上
简单的方法是通过ODBC来实现:
具体知实现
一、包含Excel文件道操作类头文件
#include "CSpreadSheet.h"
二、新建Excel文件,并写入默认数据
// 新建Excel文件名及路专径,TestSheet为内部表名
CSpreadSheet SS("c:\\Test.xls", "TestSheet");
CStringArray sampleArray, testRow;
SS.BeginTransaction();
// 加入标题
sampleArray.RemoveAll();
sampleArray.Add("姓名");
sampleArray.Add("年龄属");
SS.AddHeaders(sampleArray);
// 加入数据
2.在c中编写的程序怎么样把数据输出到excel表
说说思路: 这个显然要用ADO 1、连接数据库,得到连接对象conn 2、用下面的select语句打开表,将数据读入RecordSet set rs=conn.execute("select * from 表名") 3、用循环将数据读入二维数组arr row=0 while not rs.eof arr[row,0]=rs["id"] arr[row,1]=rs["year"] arr[row,2]=rs["mon"] arr[row,3]=rs["1"] arr[row,4]=rs["2"]。
3.在c中编写的程序怎么样把数据输出到excel表上
简单的方法是通过ODBC来实现:具体知实现一、包含Excel文件道操作类头文件#include "CSpreadSheet.h"二、新建Excel文件,并写入默认数据// 新建Excel文件名及路专径,TestSheet为内部表名CSpreadSheet SS("c:\\Test.xls", "TestSheet");CStringArray sampleArray, testRow;SS.BeginTransaction();// 加入标题sampleArray.RemoveAll();sampleArray.Add("姓名");sampleArray.Add("年龄属");SS.AddHeaders(sampleArray);// 加入数据。
4.c语言得到的数据如何写入excel中或者txt中呢
您好,一、包含Excel文件操作类头文件 #include "CSpreadSheet.h" 二、新建Excel文件,并写入默认数据 // 新建Excel文件名及路径,TestSheet为内部表名 CSpreadSheet SS("c:\\Test.xls", "TestSheet"); CStringArray sampleArray, testRow; SS.BeginTransaction(); // 加入标题 sampleArray.RemoveAll(); sampleArray.Add("姓名"); sampleArray.Add("年龄"); SS.AddHeaders(sampleArray);// 加入数据 CString strName[] = {"徐景周","徐志慧","郭徽","牛英俊","朱小鹏"}; CString strAge[] = {"27","23","28","27","26"}; for(int i = 0; i < sizeof(strName)/sizeof(CString); i++) { sampleArray.RemoveAll(); sampleArray.Add(strName[i]); sampleArray.Add(strAge[i]); SS.AddRow(sampleArray); } SS.Commit(); 三、读取Excel文件数据 CSpreadSheet SS("c:\\Test.xls", "TestSheet"); CStringArray Rows, Column;//清空列表框 m_AccessList.ResetContent(); for (int i = 1; i <= SS.GetTotalRows(); i++) { // 读取一行 SS.ReadRow(Rows, i); CString strContents = ""; for (int j = 1; j <= Rows.GetSize(); j++) { if(j == 1) strContents = Rows.GetAt(j-1); else strContents = strContents + " --> " + Rows.GetAt(j-1); } m_AccessList.AddString(strContents); } 四、对已存在Excel表格数据进行添加、插入、替换操作 // 初始化测试行数据,进行添加、插入及替换数据操作演示 for (int k = 1; k <= 2; k++) { testRow.Add("Test"); } SS.AddRow(testRow); // 添加到尾部 SS.AddRow(testRow, 2); // 插入新行到第二行 SS.AddRow(testRow, 6, true); // 替换原第四行来新的内容 SS.AddCell("徐景周", 1,2); // 添加(不存在)或替换(存在)第二行,第一列单元格内容 SS.Commit(); 五、对已存在Excel表格数据进行行、列、单元格查询 void CExcelAccessDlg::OnQuery() { CSpreadSheet SS("c:\\Test.xls", "TestSheet"); CStringArray Rows, Column; CString tempString = ""; UpdateData(); if(m_strRow == "" && m_strColumn == "") // 查询为空 { AfxMessageBox("行号、列号不能同时为空!"); return; } else if(m_strRow == "" && m_strColumn != "") // 查询指定列数据 { int iColumn = atoi(m_strColumn); int iCols = SS.GetTotalColumns(); if(iColumn > iCols) // 超出表范围查询时 { CString str; str.Format("表中总列数为: %d, ", iCols); AfxMessageBox(str + " 查询列数大于Excel表中总列数,请重新输入!"); return; } // 读取一列数据,并按行读出 if(!SS.ReadColumn(Column, iColumn)) { AfxMessageBox(SS.GetLastError()); return; } CString tmpStr; for (int i = 0; i < Column.GetSize(); i++) { tmpStr.Format("行号: %d, 列号: %d ,内容: %s\n", i+1,iColumn,Column.GetAt(i)); tempString += tmpStr; } AfxMessageBox(tempString); } else if(m_strRow != "" && m_strColumn == "") // 查询指定行数数据 { int iRow = atoi(m_strRow); int iRows = SS.GetTotalRows(); if(iRow > iRows) // 超出表范围查询时 { CString str; str.Format("表中总行数为: %d, ", iRows); AfxMessageBox(str + " 查询行数大于Excel表中总行数,请重新输入!"); return; } // 读取指定行数据 if(!SS.ReadRow(Rows, iRow)) { AfxMessageBox(SS.GetLastError()); return; } CString tmpStr; for (int i = 0; i < Rows.GetSize(); i++) { tmpStr.Format("行号: %d, 列号: %d ,内容: %s\n", iRow, i+1, Rows.GetAt(i)); tempString += tmpStr; } AfxMessageBox(tempString); } else if(m_strRow != "" && m_strColumn != "") // 查询指定单元格数据 { int iRow = atoi(m_strRow), iColumn = atoi(m_strColumn); int iRows = SS.GetTotalRows(), iCols = SS.GetTotalColumns(); if(iColumn > iCols) // 超出表范围查询时 { CString str; str.Format("表中总列数为: %d, ", iCols); AfxMessageBox(str + " 查询列数大于Excel表中总列数,请重新输入!"); return; } else if(iRow > iRows) { CString str; str.Format("表中总行数为: %d, ", iRows); AfxMessageBox(str + " 查询行数大于Excel表中总行数,请重新输入!"); return; } // 读取指定行、列单元格数据 if(!SS.ReadCell(tempString, iColumn, iRow)) { AfxMessageBox(SS.GetLastError()); return; } CString str; str.Format("行号: %d, 列号: %d ,内容: %s", iRow,iColumn,tempString); AfxMessageBox(str); } } 六、将存在的Excel转换另存为指定分隔的文本文件 // 将原Excel文件转换为用分号分隔的文本,并另存为同名文本文件 SS.Convert(";"); 七、删除Excel中表格 SS. DeleteSheet(); // 删除Excel文件中所有表格 SS. DeleteSheet(" TestSheet "); // 删除Excel中TextSheet表格 八、获取Excel中总行数、总列数、当前行 int iCols = SS.GetTotalColumns(); // 总列数 int iRows = SS.GetTotalRows(); // 总行数 int iCurRow = SS.GetCurrentRow(); // 当前所在行号 九、获取行头数据 CStringArray rowHeader; SS。
5.【求助】求助 怎么编写C/C++程序读Excel文件数据
magic7004(站内联系TA)Excel可以当成数据库来读写,不过对数据格式貌似有限制,不推荐。
还有就是用com来操作excel了,可以实现excel的几乎所有功能,推荐。jjdg(站内联系TA)对
但是我做的一个程序中,必须要用c/c++读Excel表中的数据,而且我只会C/C++,不会其他的语言magic7004(站内联系TA)汗下,搂住com不是语言的。magic7004(站内联系TA)要么搂住用DAO把Excel当数据库吧。magic7004(站内联系TA)senlia(金币+2,VIP+0):请问能否详细讲解如何用com或者dao处理excel文件?谢谢 11-19 13:55详细讲解的话可以写本书了。
搂住既然需要操作excel,还是学习下com或者数据库的知识比较好。
ps:建议搂住用vb或者C#来做Excel的操作,简单很多的。至于计算部分,用C++做成Dll就好了。
搂住如果是为了学习的话,还是别怕麻烦,找本书看看。
如果只是要解决问题,那就想想变通的方法吧。比如按照沙发说的,做成csv(Comma Separated Values),它是纯文本的文件,每行是一条记录,记录中的每个字段用逗号(英文的)分隔开就行了。CSV可以用excel直接打开的。wxl_23(站内联系TA)建议一下,可以用python来写呀,这样就可以读Excel文件的数据了。magic7004(站内联系TA)今天有空,写了个简单的例子,搂住看看吧。我用VC++ 6.0 和 Office 2003做的。
用法:首先创建或打开一个工程(MFC的或者Win32的都行),然后按下面步骤:
1、把文件ExcelOperation.h、ExcelOperation.cpp、Excel.h和Excel.cpp全部加入到工程中。
2、打开工程的StdAfx.h,如果里面没有#include,就加上这行。
3、选菜单Project-->Settings。,在Project Settings窗口中选C/C++标签,然后Catagory选Code Generation,然后Use run-time library选Multithreaded 或 Multithreaded Dll(看附件图片)。
4、在搂住自己的cpp中加入#include "ExcelOperation.h"就可以使用ExcelOperation类了。
类包含OpenXls,CreateXls,CloseXls,ReadCell,WriteCell 共5个成员函数,参数都很简单,用法看下面的例子。
6.C#把查询出来的数据导出到Excel代码怎么写
C#把查询出来的数据导出到Excel代码的代码如下:
1、创建form
public Form1()
{
InitializeComponent();
}
2、点击button开始查询db并导入excel数据
private void button1_Click(object sender, EventArgs e)
{
SqlConnection cnn ; //sql连接对象
string connectionString = null; 数据库连接串
string sql = null; 执行sql定义
string data = null; 初始化结果
int i = 0;
int j = 0;
//以下是声明并创建excel文件
Excel.Application xlApp ;
Excel.Workbook xlWorkBook ;
Excel.Worksheet xlWorkSheet ;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
//开始连接数据库
connectionString = "data source=servername;initial catalog=databasename;user id=username;password=password;";
cnn = new SqlConnection(connectionString);
cnn.Open(); //打开数据库
sql = "SELECT * FROM Product"; //定义查询sql语句
SqlDataAdapter dscmd = new SqlDataAdapter(sql, cnn); //执行查询
DataSet ds = new DataSet();
dscmd.Fill(ds);
for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
{
for (j = 0; j <= ds.Tables[0].Columns.Count - 1; j++)
{
data = ds.Tables[0].Rows[i].ItemArray[j].ToString();
xlWorkSheet.Cells[i + 1, j + 1] = data;
}
}
//数据导入到excel文件
xlWorkBook.SaveAs("csharp.net-informations.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
releaseObject(xlWorkSheet);
releaseObject(xlWorkBook);
releaseObject(xlApp);
MessageBox.Show("Excel file created , you can find the file c:\\csharp.net-informations.xls");
}
转载请注明出处育才学习网 » 怎么写数据到excelc