使用PowerShellparsingXML并将数据编辑到Excel中,会出现奇怪的外来字符
当我使用PowerShell将XML表单中的数据复制到Excel工作表时,我遇到了一个问题。 来自XML文件的数据如下所示: <TrackTitle>I'm the One</TrackTitle>
,但Excel中的结果如下所示: IÂ''m the One
。 任何人都知道撇号可能会发生什么? 我所做的只是抓取TrackTitle节点并将其插入到Excel电子表格中,没有什么奇怪的。 我认为这是一个编码问题? 但是我不知道如何在移动的时候影响信息的编码。 感谢一堆帮助。
编辑:这是有问题的段落的hex代码。 在HxDhex编辑器中,时髦的字符也显示出来。
在HxD的XML文档中,
“I'm the One”=“49 C2 92 27 6D 20 74 68 65 20 4F 6E 65”
如果我使用编辑→复制→编辑器视图 ,当我select我IÂ''m the One
:
偏移(h)00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00004AA0 49 C2 92 27 6D 20 74 68 65 20我是 00004AB0 4F 6E 65一
奇怪的是,即使在HxD中,angular色也会变形。 在XML中看起来完全正常。
C2 92
在单引号( 27
)之前的两个字节C2 92
是不可打印的控制字符( U + 0092 )。 不知道这个Unicode字符的目的是什么,或者字符是如何进入你的XML数据的(如果我不得不猜测,我会说这是从某处复制/粘贴的,也许是一些HTML文本 )。
如果你在记事本中打开文件,并把光标放在单引号的右边,你很可能需要按← 3次来将光标从“ I'
的右边移到'
I
'
的左边。
只需从XML文件中删除字符(删除错误的字符序列,在它的位置inputI'
,然后保存文件),你会没事的。