首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从C#到MusicXML?

从C#到MusicXML?
EN

Stack Overflow用户
提问于 2011-07-04 12:52:13
回答 3查看 2.9K关注 0票数 6

有人知道有什么库可以用来从C#中写入MusicXML数据吗?与此类似:http://proxymusic.kenai.com/ (尽管这个是用于java的)。

我会尽量不手动编写它,但如果最坏的情况发生,我将别无选择,只能从我的结果中手动输出和编写MusicXML。

EN

回答 3

Stack Overflow用户

发布于 2011-07-04 20:26:37

自MusicXML has a XML schema available以来,您可以使用xsd.exe创建表示XML结构的类:

代码语言:javascript
复制
xsd /c xlink.xsd musicxml.xsd container.xsd opus.xsd

然后,您可以使用XmlSerializer从/到文件加载和保存生成的类。

(由于某种原因,其中一个模式文件osfpvg.xsd无法正确编译。希望您不需要它。)

票数 7
EN

Stack Overflow用户

发布于 2012-04-16 08:08:26

要使用xsd.exe,可以使用以下命令:

代码语言:javascript
复制
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\xsd.exe" "c:\dev\musicxml30\musicxml.xsd" "c:\dev\musicxml30\xlink.xsd" "c:\dev\musicxml30\xml.xsd" /c /o:"c:\dev"

这将在c:\dev文件夹中创建一个名为musicxml_xlink_xml.cs的文件。

Compiled Class

票数 1
EN

Stack Overflow用户

发布于 2014-06-14 16:52:34

对于我来说,当我尝试转换MusicXml3.0.xsd时,xsd.exe每次都失败。所以,我所做的是

代码语言:javascript
复制
xsd.exe musicFile.xml 

它生成了一个模式文件,并且

xsd.exe musicFile.xsd /classes

它生成了所需的c#类。为了使生成的xml能够被像Sibelius 7这样的程序读取,我唯一需要添加的就是添加

代码语言:javascript
复制
<!DOCTYPE score-partwise PUBLIC "-//Recordare//DTD MusicXML 2.0 Partwise//EN" "http://www.musicxml.org/dtds/partwise.dtd">

太棒了!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6567400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档