以下は、ExcelシートからXML形式のデータを取得するために使用しているコードです。ただし、Excelシートで値が空白の場合。XML はそれを値として取っていません。Excelで列名が asEmployeeAddress
で、空白の場合はタグを as で閉じる必要があるとし<EmployeeAddress/>
ます。
daAdapter = new OleDbDataAdapter("Select * FROM [KDC Report$]", connection);
System.Data.DataTable dt = new System.Data.DataTable("Assets");
//daAdapter.FillSchema(dt, SchemaType.Source);
daAdapter.Fill(dt);
DataSet ds = new DataSet("DocumentElement");
ds.Tables.Add(dt);
var memoryStream = new MemoryStream();
using (TextWriter streamWriter = new StreamWriter(memoryStream))
{
var xmlSerializer = new XmlSerializer(typeof(DataSet));
xmlSerializer.Serialize(streamWriter, ds);
Encoding.UTF8.GetString(memoryStream.ToArray());
}
ds.WriteXml("C:\\Development\\MyAppln\\ExcelToXML\\Products.xml");