2

我有一个放在 txt 文件中的 XML 模板。我想将它导入一个变量并使用“-f”将我的数据输入到字符串中。就像是:

$XMLtmplt = get-content C:\XMLtemplate.txt
$XML = "$XMLtmplt" -f $objID $pageTitle $otherData
$OneNoteObject.UpdatePageContent($XML)

这在使用小字符串设置 $XMLtmplt 变量时有效,但在我从文件中导入大字符串时失败。我宁愿不要在我的脚本中放一个长的 XML 字符串;从文件导入很好。到目前为止,我唯一的工作是在插入点之前和之后分解数据,例如:

$XML = "<All the first data>"
$XML += $1stVariableToInsert
$XML += "<more XML stuff>"
$XML += $2ndVariableToInsert
...
$OneNoteObject.UpdatePageContent($XML)

顺便说一句,这是为 MS OneNote API 构建 XML 的,我发现它非常喜怒无常。错误代码的描述性不足。当您拥有数百行 XML 时,一般的“坏 XML”将无济于事。

有任何想法吗?

4

1 回答 1

0

一个具体问题:

$XML = "$XMLtmplt" -f $objID $pageTitle $otherData

替换的参数-f应该用逗号分隔:格式运算符有两个参数:右边的字符串和左边的数组:

$XML = "$XMLtmplt" -f $objID, $pageTitle, $otherData
于 2012-06-03T08:41:21.600 回答