GraphViz没有';从C#代码开始时,不能生成png文件
在我描述图形的课程中,我想创建一个生成GraphViz代码并将其保存到.dot文件的方法,另一个生成带有该图形的png图形文件的方法。我试过:GraphViz没有';从C#代码开始时,不能生成png文件,c#,graphviz,C#,Graphviz,在我描述图形的课程中,我想创建一个生成GraphViz代码并将其保存到.dot文件的方法,另一个生成带有该图形的png图形文件的方法。我试过: private void MakeDotFile() { FileStream fileStream = new FileStream("tmp.dot", FileMode.Create, FileAccess.Write); StreamW
private void MakeDotFile()
{
FileStream fileStream =
new FileStream("tmp.dot", FileMode.Create, FileAccess.Write);
StreamWriter streamWriter = new StreamWriter(fileStream);
streamWriter.Write("graph { a -- b }");
streamWriter.Close();
fileStream.Close();
}
public void MakePngFile()
{
MakeDotFile();
Process process = new Process();
process.StartInfo =
new ProcessStartInfo("<< dot.exe location >>",
"-Tpng << .dot file location >> > << .png file location >>");
process.Start();
process.WaitForExit();
}
private void MakeDotFile()
{
文件流文件流=
新的文件流(“tmp.dot”、FileMode.Create、FileAccess.Write);
StreamWriter StreamWriter=新的StreamWriter(文件流);
streamWriter.Write(“图{a--b}”);
streamWriter.Close();
fileStream.Close();
}
public void MakePngFile()
{
MakeDotFile();
流程=新流程();
StartInfo进程=
新的ProcessStartInfo(“>”,
“-Tpng>>>”;
process.Start();
process.WaitForExit();
}
但不幸的是,它正在完成一个类似“嘟嘟”的声音,什么也不做(不创建png文件)。调试时,我发现进程退出代码是3。我多次检查路径是否良好。有趣的是,在cmd.exe中具有相同参数的相同程序正在正确运行。
你怎么认为?问题在哪里?解决办法是什么?
提前感谢您应该使用
dot
的-o
参数,而不是重定向输出
process.StartInfo =
new ProcessStartInfo(@"D:\graphviz\bin\dot.exe",
@"-Tpng D:\tmp.dot -o D:\tmp.png");