使用c#从xml创建bin文件

本文关键字:bin 文件 创建 xml 使用 | 更新日期: 2023-09-27 18:04:58

我有一个智能家居PCL,使用2个文件进行配置。一个是XML文件(sps.xml),另一个是包含与XML文件相同信息的二进制文件(sps.bin)。我正在使用c#创建我自己的组态软件,我可以修改XML文件,但我很难弄清楚如何创建二进制文件。

我的问题是:有一个XML文件作为输入,我如何使用c#创建它的bin文件版本?

下面是一个示例,当我使用Windows记事本打开sp .bin时,它是什么样子的:

Nicht zugeordneteÀ      IconState   ÂÉ                ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Schwerer Fehler eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Kleiner Fehler  eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Warnung eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   InfoeÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Neutral eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Aktiv   eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Inaktiv eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©      „¡×á½—VÏ«ô%[   Alarm   eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©   
  „¡×á½—VÏ«ô%[   Scharf  eÀ    IconState   ÂÉ                ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   UnscharfeÀ    IconState   ÂÉ            
   ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   ObeneÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©   
  „¡×á½—VÏ«ô%[   Mitte   eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Unten   eÀ    IconState   ÂÉ            
   ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Ein eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Aus eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Auf eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Zu  eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   VolleÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   LeereÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Fertig  eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[    In Arbeit   eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Heiß   eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   KalteÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Webpage eÀ    IconState   ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©   ´æ¤à¦õá¬`Éï.ƒ%[ 
  Categories  eÀ   CategoryCaption ÿÿÿÿ'¹eJ   ÿV     ?   Ô©   ´æ¤à¦õá¬aÉï.ƒ%[    Icons  eÀ   IconCaptionCat  ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Nicht zugeordneteÀ   IconCat ÂÉ                ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Beleuchtung eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Beschattung eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Heizung eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Klima   eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Audio   eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Fühler eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[ 
  Heizventil  eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©         „¡×á½—VÏ«ô%[ 
  Temperatur  eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©    
 „¡×á½—VÏ«ô%[   Melder  eÀ   IconCat ÂÉ                 ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   LüftungeÀ   IconCat ÂÉ            
   ÿÿÿÿ'¹eJ   ÿV     ?   Ô©     „¡×á½—VÏ«ô%[   Fenster eÀ   IconCat ÂÉ               ÿÿÿÿ'¹eJ   ÿV     ?   Ô©    
 „¡×á½—VÏ«ô%[   ÃœberwachungeÀ 

使用c#从xml创建bin文件

如果没有指定bin文件的格式,就不能这样做。

您可以使用十六进制编辑器,更改配置,并检查bin文件的更改位置,也许可以找出它是如何构建的-但不知道它的结构,您无法构建它。

XML是众所周知的格式,因此在框架中有需要处理的类。"任意二进制"不是一种已知的格式。有一些类可以处理二进制数据,但是,在不知道它应该是什么格式的情况下,它们无法帮助您。