问题标签 [binary-xml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 我的代码适用于小型设备,但不适用于 5 英寸以上的大屏幕设备
我的代码适用于小型设备,但不适用于 5 英寸以上的大屏幕设备。
布局文件夹结构如下:
例外是:
.net - 使用 MC-NBFX 的 XML 信息集的紧凑二进制编码?
Microsoft 实现了他们自己的紧凑型二进制 XML 编码 (MC-NBFX),这是 WCF 中的一个选项,用于比标准 XML 文本编码更有效地传送 XML 信息集(例如 SOAP 请求和响应)。
我想使用相同的编码,例如以紧凑的二进制形式将大型 XML 文件保存到磁盘。
我开始:
这确实输出了一个 MC-NBFX 格式文件,但是如果我用重复的字符串(例如元素名称)对 XML 文档进行编码,这些名称会在二进制文件中出现多次。
XmlDictionaryWriter 的意义在于它允许定义字符串字典并用字符串 ID 替换流中的字符串。实际上有两个字典,一个可以传递给 CreateBinaryWriter() 并且旨在成为预定/静态字典。我尝试插入这样一个静态字典,但编码器忽略了它:
第二种类型的字典是动态的,据说在编写过程中会添加字符串。要使用此机制,需要使用(并且可能覆盖)XmlBinaryWriterSession。例如:
同样,这对输出没有影响,仍然会出现重复的字符串,并且 XmlBinaryWriterSession 中的字典在写入完成后被视为空。我期望必须重写 XmlBinaryWriterSession 才能提取动态字典的内容,这样我就可以用编码的 XML 来传达那些内容(MC-NBFX 不涵盖这一点,我很高兴自己编码字典如果必要的)。
这些类的文档很少。它们是否打算以这种方式使用,如果是这样,我哪里错了?
谢谢。
java - EBML 序列化性能和 JAVA 中的现有库
目前正在探索提高相当传统的 SOAP Web 服务处理链的性能的方法,我正在寻找二进制 XML,尤其是 EBML。
第一个简单的问题:有没有比较 XML 和 EBML(或其他二进制 XML 替代方案)的参考性能评估?这种改变的目标显然是促进序列化、传输和解析,但我的(相当短的)搜索没有指出任何基准。
第二个后续问题:在 JAVA 中是否存在可靠的二进制 XML 开源实现?
谢谢。
wcf - WcfTestClient.exe 可以发送内容类型“application/soap+msbin1”的请求吗?
我正在尝试通过 WcfTestClient.exe 测试 Silverlight WCF 接口。但是,我从服务器收到以下消息:
HTTP/1.1 415 无法处理消息,因为内容类型为 'text/xml; charset=utf-8' 不是预期的类型 'application/soap+msbin1'。服务器:Microsoft-IIS/7.5 X-Powered-By:ASP.NET 日期:2014 年 10 月 28 日星期二 18:13:30 GMT 内容长度:0
我无法更改服务器配置。是否有任何工作回合?
android - 二进制 XML 文件 - Google Map V2 (Android Studio) 中的类片段膨胀错误
我正在尝试将 Google Map V2 集成到我在 android studio 中的项目中。我在 build.gradle 文件中添加了 google play 服务作为依赖项,如下所示:
我还更改了我的AndroidManifest.xml文件,如下所示:
在我的视图布局中,我添加了一个片段。
在我的活动中,我创建了一个方法createMapView,如下所示:
我从我的 OnCreate 方法中调用了这个方法。当我尝试执行我的项目时,我发现了这样的错误:
我的目标 SdkVersion 是 21。知道如何解决吗?我找到了一些答案,但这些都没有帮助我。
android-layout - Android LayoutInflater:膨胀二进制布局 xml
我正在尝试动态扩展布局 xml 文件。该文件稍后应该来自服务器,因此 Android 应用程序(客户端)将下载它并加载布局。
我知道使用普通布局文件不可能做到这一点,因为出于性能原因,布局 xml 之前以某种方式进行了转换,而 LayoutInflater 仅适用于某种二进制 Xml。
现在我的问题。是否可以将“普通”布局 xml 文件转换为服务器上的二进制 xml 文件,然后将其发送到客户端,以便 LayoutInflater 可以从服务器加载二进制 xml?
感谢您提前提供任何帮助
c# - 使用 XmlDictionaryWriter.CreateBinaryWriter 和 XmlDictionary 编写紧凑的 xml
我想以紧凑的格式将 xml 文档写入磁盘。为此,我使用了net framework方法XmlDictionaryWriter.CreateBinaryWriter(Stream stream,IXmlDictionary dictionary)
此方法编写一个自定义的紧凑二进制 xml 表示,以后可以由XmlDictionaryWriter.CreateBinaryReader
. 该方法接受一个XmlDictionary
可以包含公共字符串的字符串,这样就不必每次都在输出中打印这些字符串。字典索引将打印在文件中,而不是字符串。CreateBinaryReader
以后可以使用相同的字典来反转该过程。
但是我通过的字典显然没有使用。考虑这段代码:
产生的输出是这样的(未显示二进制控制字符)
所以显然 XmlDictionary 没有被使用。所有字符串都完整地出现在输出中,甚至多次出现。
这不是仅限于 XDocument 的问题。在上面的最小示例中,我使用 XDocument 来演示问题,但最初我在使用 XmlDictionaryWriter 和 DataContractSerializer 时偶然发现了这一点,因为它是常用的。结果是一样的:
结果输出没有使用我的 XmlDictionary。
如何让 XmlDictionaryWriter 使用提供的 XmlDictionary?
还是我误解了它是如何工作的?
使用 DataContractSerializer 方法,我尝试调试网络框架代码(visual studio/options/debugging/enable net.framework source stepping)。显然,作家确实尝试在字典中查找上述每个字符串,正如预期的那样。但是,由于我不清楚的原因,在XmlbinaryWriter.cs 的第 356 行查找失败。
我考虑过的替代方案:
XmlDictionaryWriter.CreatebinaryWriter 有一个重载,它也接受 XmlBinaryWriterSession。然后编写器将它遇到的任何新字符串添加到会话字典中。但是,我只想使用静态字典进行读写,这是事先知道的。
我可以将整个东西包装成 a
GzipStream
并让压缩处理字符串的多个实例。但是,这不会压缩每个字符串的第一个实例,并且总体上看起来像是一个笨拙的解决方法。
sql - Oracle 12g XmlType 存储为二进制 XML(选择问题)
我正在尝试从 DB Oracle12g 中选择 XML。XML 存储在表中(XMLType 存储为二进制 XML),我无法使用 where 条件创建 Select 查询。我的问题是查询不返回任何记录。我正在使用 Oracle SQL Developer 4.1.0.19。
我的查询示例
表结构:
插入的 XML
XML 通过查询插入到 db 中:
android - 膨胀类 ImageButton 时出错
我有一个应用程序,它有fragment
它image button
。问题是它在 5.0 以上工作,5.0
但不低于 5.0。最小 sdk 版本是 17。
不明白这里有什么问题。我有 2 个例外。
一是RuntimeException
为image button
。第二个是ResourceNotFoundException
工厂选择器文件。
日志:第一个异常——
java.lang.RuntimeException:无法启动活动 ComponentInfo{com.example.siddhi.timetablelayout/com.example.siddhi.timetablelayout.MainActivity}:android.view.InflateException:二进制 XML 文件第 16 行:
膨胀类错误ImageButton
第二个例外——
引起:android.view.InflateException:二进制 XML 文件第 16 行:膨胀类 ImageButton 时出错
在线的 :
View view = inflater.inflate(R.layout.fragment_main, container, false);
的主要片段。
主要片段:
工厂选择器:
片段主要:
晶圆厂:
完整的堆栈跟踪:
你能告诉我这里有什么问题吗?
android - 充气机在模拟器上工作,但不在真实设备上
我对 android 应用程序开发相当陌生,我现在正在为我在 Android Studio 的教职员工项目做这件事(使用 API 23)。我会直奔主题:我正在开发的应用程序在我运行它时在模拟器上工作(没有显示任何致命错误),但是一旦我在实际设备上运行它,它就会崩溃并出现错误“二进制 XML 文件第 12 行:膨胀类片段时出错”。
完整的堆栈跟踪:
该活动的完整代码:
我的那个活动的布局文件:
显现:
请帮我解决这个错误,我将不胜感激。