xmlwriter writedoctype格式化

fou*_*t84 2 .net xml powershell doctype

我正在尝试生成此doctype字符串:

<!DOCTYPE games SYSTEM "transform.dtd">
Run Code Online (Sandbox Code Playgroud)

这就是我一直在尝试的:

$writer.WriteDocType("games", $null , "transform.dtd", $null )
Run Code Online (Sandbox Code Playgroud)

我不完全确定如何获得那条确切的线.

Jay*_*kul 6

PowerShell中存在一个已知错误:将null传递给字符串参数会导致String.Empty而不是null.

你可以像这样解决它:

# Given an XML writer of some sort ...
$writer = [system.xml.xmlwriter]::create("$pwd\test.xml")

# Set up the parameters you want to pass to the method:
$params = @("games",$null,"transform.dtd",$null)

# And invoke it using .Net reflection:
$writer.GetType().GetMethod("WriteDocType").Invoke($writer,$params)

# Eventually, close the writer:
$writer.Close()
Run Code Online (Sandbox Code Playgroud)