草庐IT

c# - Directory.GetFiles() 但仅包含具有特定内容的文件(例如 "my file contents")使用 C#

我想搜索所有包含特殊标签的XML文件,例如其内容中的“字段”。如何使用C#中的Directory.GetFiles(...)方法实现此目的?string[]filePathsFields=Directory.GetFiles(@"E:\Code\","*.xml",SearchOption.AllDirectories); 最佳答案 你不能。如果你想按内容过滤,你需要打开并阅读每个文件,看看它是否包含你的内容。 关于c#-Directory.GetFiles()但仅包含具有特定内容的文件

c# - 我想将现有的 List<T> 保存到 c# 中的 XML 文件中

我有一个地方类定义如下:publicclassplace{publicstringplaceID{get;set;}publicstringplaceCatID{get;set;}publicstringplaceName{get;set;}}并将数据存储在一个列表调用placelist中Listplacelist=newList();可以指导我如何将位置列表转换为字符串或将其导出并保存为XML文件格式,如下所示:0001C1Location10002C1Location2使用的语言是C#谢谢。 最佳答案 您可以使用任何序列化为XM

c# - 创建 Linq XML 文档时为 "Non white space characters cannot be added to content"

好的,我通过执行以下操作将文件缓存在内存中byte[]file=System.IO.File.ReadAllBytes("test.xml");然后我尝试从该缓冲区创建一个xml文档,如下所示:System.IO.MemoryStreamstream=newSystem.IO.MemoryStream(file);System.Xml.XmlTextReaderreader=newSystem.Xml.XmlTextReader(stream);System.Xml.Linq.XDocumentxPartDocument=newSystem.Xml.Linq.XDocument(rea

c# - LINQ to XML 不返回任何结果

我正在使用Linq来解析XML,但它没有返回任何结果:XML:citycompanyname代码:publicclassMerc{publicstringCompanyName{get;set;}}using(XmlReaderreader=XmlReader.Create(newStringReader(result))){XDocumentdoc=XDocument.Load(reader,LoadOptions.SetLineInfo);Listm=(fromdownloadInfoReturnindoc.Descendants("downloadInfoReturn")sele

xml - Linq to XML - 仅在某些情况下创建 Xelement

我是linqtoxml的新手,正在尝试执行以下操作。我正在根据收到的一些对象创建一个新的xml。我有一个名为“Scale”的XElement有一个bool值“DynamicScale”,如果它是False,我需要创建两个XElements作为Scale的后代,如果它是是的,我不需要这些元素。010000有什么办法可以在创建这个的过程中添加一个If语句吗?或者任何其他建议来处理这种需求?如果我希望能够做到这一点(我知道这是不可能的)。欢迎使用任何简单的方法。newXElement("Scale",newXAttribute("DynamicScale",c.DynamicScale),i

c# - 使用默认属性路径的 LINQ XML 搜索失败

我用下面的代码来搜索元素个数,如果没有默认路径,搜索成功:要搜索的代码:XElementroot=XElement.Load(@"c:\b.txt",LoadOptions.PreserveWhitespace);IEnumerableaddress=fromelinroot.Elements("Address")selectel;intc=address.Count();c的值为2,数据如下:EllenAdams123MapleStreetMillValleyCA10999USATaiYee8OakAvenueOldTownPA95819USA但是如果我通过将第二行交换为(xmlns

c# - 如果内部标记与 C# 中的 Linq 值匹配,则删除 XML 节点

booliconAttachmenturn:schemas:httpmail:hasattachmentboolean110padding-left:3px;text-align:center03Fromurn:schemas:httpmail:fromnamestring68padding-left:3px;text-align:left01Subjecturn:schemas:httpmail:subjectstring326padding-left:3px;text-align:left1如果标题等于“主题”,我想删除列节点(fromnodeinxdoc.Descendants(

c# - 如何使用 Linq To XML 获取元素值

使用LinqToXML,如何从下面的xml中获取space_id值(720)?我正在阅读this但我认为xml中的namespace是我的绊脚石。720SPACE_7200编辑这是我的位置:privateintGetIDFromXML(stringxml){XDocumentxDoc=XDocument.Parse(xml);//hmmm....} 最佳答案 如果你只想要唯一的space_id元素,没有查询等:XNamespacens="http://www.collegenet.com/r25";stringid=doc.Desc

xml - LINQ to XML 在标记之间生成\r\n?

我正在生成一个具有这种结构的XElement:\r\nYA\r\nYO\r\n我如何以非黑客方式摆脱空格和\r\n:)更新:XElementtestsXmlDocument=newXElement("TestNames");foreach(stringtestinselectedTests)testsXmlDocument.Add(newXElement("Test",test));returntestsXmlDocument.ToString(); 最佳答案 XElement提供了ToString的重载它采用SaveOptions

c# - 使用 Linq 获取 CDATA XML 部分

我四处搜索寻找获取CDATA部分文本区域的方法,并找到了使用linq的非常好的解决方案。我需要提取CDATA部分中嵌入的XML,以便提取不同的信息。我有以下XML:-39979800003997RedRiderBB-GunInStockChicago]]>因此,如果可能的话,我希望通过将整个cdata部分提取到XDocument中来实现这一点,这样我就可以使用Linq进行查询。另外,如果我只是想从CData部分中提取一个元素。我怎样才能做到这一点?使用林克?我曾尝试使用下面的Linq代码返回cdata部分,但无法对其执行任何操作,因为它作为IEnumerable返回。我可能遗漏了一些简