问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

...2008下,如何编程实现从XLS文件到XML文件的转换?有其他方法吗?_百度...

发布网友 发布时间:2024-07-22 03:55

我来回答

5个回答

热心网友 时间:2024-08-06 03:45

源码就不提供了,只给你说思路。
Excle本身就是一个数据集,你用ODBC来操作,当成数据库使用就行了。这时候取数据无非就是"Select XX FROM TABLE_A",然后你得到数据,就需要根据XML的规范和你自己的需求存放了,VC可以用轻量级的XML开源库叫TinyXML。

当然,你要是想生成的XML文件仍然能用Excle编辑,你可以看看:
http://blog.csdn.net/BeRoy/archive/2009/04/21/4098531.aspx

其实你没有说明你生成的XML打算干嘛用。。

热心网友 时间:2024-08-06 03:47

方法真多啊。。。
我也来一种。。。IO流操作,,,
fileStream file= new fileStream("路径",..mode.open)
file.read();
GetPhoneList(file);
方法

public static IList<PhoneInfo> GetPhoneList(Stream stream)
{
HSSFWorkbook newWorkBook = new HSSFWorkbook(stream);
int count = newWorkBook.GetSheetAt(0).PhysicalNumberOfRows;
HSSFSheet sheet = newWorkBook.GetSheetAt(0);
IList<PhoneInfo> list=new List<PhoneInfo>();
HSSFCell cell;
HSSFRow row;
for (int i = 1; i < count; i++)//Excel的列
{
row = sheet.GetRow(i);
PhoneAd.PhoneInfo phoneinfo = new PhoneInfo();
// newWorkBook.GetSheetAt(0).GetRow(i).GetCell(0).StringCellValue;
for (int j = 0; j < 4; j++)//固定4行
{
cell = row.GetCell(j);
//string msg = cell.StringCellValue;
switch (j)
{
case 0:
phoneinfo.FPhoneNumber = cell.StringCellValue; break;//电话号码
case 1:
phoneinfo.FDescription1 = cell.StringCellValue; break;//说明一
case 2:
phoneinfo.FDescription2 = cell.StringCellValue; break;// 说明2
case 3:
phoneinfo.FDescription3 = cell.StringCellValue; break;//说明3
default:
break;
}

}
list.Add(phoneinfo);
}
return list;
}
通过这样的方法写就行了。。我的是生成到sql2005里边。。功能都差不多。。。

热心网友 时间:2024-08-06 03:50

第一种方法 using System.Data.OleDb;
string conn = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =d:\\1.xls;Extended Properties=Excel 8.0";

OleDbConnection thisconnection = new OleDbConnection(conn);
thisconnection.Open();
string Sql = "select * from [Sheet1$]";
OleDbDataAdapter mycommand = new OleDbDataAdapter(Sql, thisconnection);
DataSet ds = new DataSet();
mycommand.Fill(ds);

ds.WriteXml("d:\\2.xml");
thisconnection.Close();
第二种方法:先引用 然后选择 COM里面找到 Microsoft.Excel
然后

string excelFilePath = @"D:\1.xls";
Excel.Application myExcel = new Excel.ApplicationClass();
object oMissing = System.Reflection.Missing.Value;
myExcel.Application.Workbooks.Open(excelFilePath, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing);
Excel.Workbook myBook = myExcel.Workbooks[1];
Excel.Worksheet mySheet = (Excel.Worksheet)myBook.Worksheets[1];
System.Data.DataTable dt = new System.Data.DataTable("rycjsb");
dt.Columns.Add("F1", System.Type.GetType("System.String"));
dt.Columns.Add("F2", System.Type.GetType("System.String"));
dt.Columns.Add("F3", System.Type.GetType("System.String"));
dt.Columns.Add("F4", System.Type.GetType("System.String"));
dt.Columns.Add("F5", System.Type.GetType("System.String"));
dt.Columns.Add("F6", System.Type.GetType("System.String"));
dt.Columns.Add("F7", System.Type.GetType("System.String"));
DataSet myDs = new DataSet();
myDs.Tables.Add(dt);
DataRow myRow;
myDs.Clear();
for (int i = 2; i <= 4; i++)
{
myRow = myDs.Tables["rycjsb"].NewRow();
for (int j = 1; j <= 5; j++)
{
Excel.Range r = (Excel.Range)mySheet.Cells[i, j];
string strValue = r.Text.ToString();
string aa = strValue;

string columnname = "F" + j.ToString();
myRow[columnname] = strValue;
}
myDs.Tables["rycjsb"].Rows.Add(myRow);
}
myDs.WriteXml("d:\\1.xml");

热心网友 时间:2024-08-06 03:47

是导入吧,将excel文档导入到系统中,然后保存成xml吧
嗯,csdn.net的blog上好像有...忘记是谁了

热心网友 时间:2024-08-06 03:50

只有用DATASET,因为它能支持写入XML,,当然可以转个弯串行化,没有现成的组件
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
无线生活台频道介绍 高赋码给产品做的“身份证”好吗? 包头市康钱工贸有限公司怎么样? 混凝土裂缝分类有哪些 混凝土裂缝种类及成因有哪些? 混凝土微观裂缝有哪些 水泥混凝土裂缝有哪些 智能制造工程专业要学哪些课程 智能制造工程大一学什么 智能制造工程专业主要学什么课程 有哪些营养价值高的海虾推荐? 四季五行属什么 2022年微信支付宝收款码真的不能用于经营了吗 微信不能使用收款码了吗 尼龙锦纶涤纶哪个好 涤纶线与尼龙线哪个好 肇庆市端州区2014年第二学期中小学期末考试时间 桦川县有什么年轻人爱去的酒吧? 监察机关移送审查起诉的程序是什么 行贿批捕后多久到检察院 儿子不去工作做父母怎么办 长沙有个谜语,"天上三'打'不响;地上三'瓜'无藤",请问是哪三打哪三瓜... 孕妇沐浴露应该如何选择? 孕妇选沐浴露应该避开哪些成分 香港女装品牌有哪些牌子 为什么我的戴尔笔记本电脑突然没声音了 然后下载驱动精灵重新安装了声卡... 戴尔笔记本电脑戴耳机有声不带耳机就没声是怎么回事 故意毁坏财物罪主观要件有哪些 我的笔记本电脑没声音了,但是插耳机和外置音响都能用。我的是戴尔710m... 故意毁坏公私财物罪的主观要件是什么? 雪能吃么? 甜虾有什么营养价值? 急如何把表格xls文件,转换成xml数据。。 故意毁坏财物罪判什么? 根据刑法规定故意毁坏财物罪会判多久 故意毁坏财物罪判多长时间? 故意毁坏财物罪不够判刑怎么办? 2022江苏银行上班时间 江苏银行几点营业 故意毁坏财物罪判决的标准是什么? 请问小米电视有哪些免费电视直播软件? 故意毁坏财物罪能判多少年 无期转有期是多少年 ...内马尔:贫民窟少年逆袭成球星!他为何总被针对? 蛙趣怎么收费的啊? 蛙趣视频电脑版V635免费PC版蛙趣视频电脑版V635免费PC版功能简介_百度... 蛙趣聊天要钱吗? 卤水放冷冻能放3个月吗 卤水放冷冻可以存放3个月吗 ...应收帐款和其他应收款在三年以上收不回来,可做坏账处理。 可是从 ... 胳膊的汉语标注怎么读 微信语音通话打不出去的原因