如何删除名称空间并在 XML 上使用 UTF-8 无 BOM 编码

How to remove the namespace and use UTF-8 No BOM encoding on an XML

我需要创建一个没有命名空间并使用 UTF-8 无 BOM 的文件以允许 WMS 读取该文件。 (我需要为映射添加命名空间,因为目标架构不是唯一的)

我创建了一个自定义发送管道来组装 XML 然后删除命名空间(使用 ESB 删除命名空间组件)

我已经按照我认为应该删除 BOM 的方式进行设置,但是当我检查出站文件时,它已更改为 ANSI 文件(但我特别说编码是 UTF-8 在管道组件)

我是不是做错了什么?有更好的选择吗?

管道组件可能工作正常,并且已经完成删除 BOM 和编码为 UTF-8 的工作。

您的第二个屏幕截图显示的是 Notepad++。 Notepad++ 的 "Encode in" 功能可让您以特定编码显示文件内容。

但是它不是编码检测器。 检测编码可能是一项艰巨的任务,尤其是当文件没有 BOM 时,因为某些编码具有相似性(例如:UTF-8 的前 128 个字符与 ASCII 相同)。

您的输入文件实际上是否包含任何以 UTF-8 独有的方式编码的字符?这可能是一个很好的测试。