zoukankan      html  css  js  c++  java
  • xml转换csv

            /// <summary>
            /// xml文件转换为CSV
            /// </summary>
            /// <param name="fileName">xml格式文件</param>
            /// <returns>true - CSV转换成功</returns>
            private static bool ToCSV(string fileName)
            {
                var xmlFilePath = @"e:ceshi.xml"; //System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location) + @"" + fileName;
    
                var csv = System.Xml.Linq.XElement.Load(xmlFilePath).Elements("Check")
                                 .Where(a => a.Attribute("Name").Value == "Windows Security Updates")
                                .Elements("Detail").Elements("UpdateData")
                                .Where(a => a.Attribute("IsInstalled").Value == "false")
                                .OrderByDescending(a => a.Attribute("Severity").Value)
                                .Select(b => string.Format("{0},{1},{2}",
                                                            "KB" + (string)b.Attribute("KBID"),
                                                            (int)b.Attribute("Severity"),
                                                            Environment.NewLine
                                                            ))
                                .Aggregate(new StringBuilder(), (sb, s) => sb.Append(s), sb => sb.ToString());
    
                string csvPath = xmlFilePath.Substring(0, xmlFilePath.Length - 3) + "csv";
                System.Text.Encoding enc = System.Text.Encoding.GetEncoding("shift_jis");
    
                using (System.IO.StreamWriter sw = new System.IO.StreamWriter(csvPath, false, enc))
                {
                    // 如果要在标题的开头显示ID列,请将其括在双引号中
                    // See: http://pasofaq.jp/office/excel/sylk.htm
                    string header = "KBID,Severity";
                    sw.WriteLine(header);
    
                    sw.WriteLine(csv);
                }
    
                return true;
            }
  • 相关阅读:
    Computer Browser服务自动停止
    Group By中Case分类统计
    C#判断网络状态
    Win7中VC6打开文件报错(转)
    SqlBulkCopy(大数据量拷贝)
    vc6开发ActiveX并发布全攻略(二)(转)
    VC6 Activex控件调试
    VC MessageBox
    常用基本AT指令
    WinForm自动重启
  • 原文地址:https://www.cnblogs.com/lishidefengchen/p/9393370.html
Copyright © 2011-2022 走看看