2

我需要将字符串路径转换为​​Geometry并再次返回。

第一步是转换我的路径:"M 100 100 L 300 100 L 200 300 z". 为此,我使用Geoemtry.Path方法,该方法从指定的字符串创建一个新的 Geometry 实例:

var geometry = Geometry.Parse("M 100 100 L 300 100 L 200 300 z");

在我的数据结构中,我需要使用以下Geometry.ToString方法存储它的路径:

string str = geometry.ToString();
// And this is my str: "M100;100L300;100 200;300z"

现在我想使用存储的路径重新创建相同的几何图形,因此我再次使用该Grometry.Parse方法:

// Here i get a FormatException
var geometry2 = Geometry.Parse(str);

问题是我得到一个FormatException
这怎么可能?我该如何解决?

4

1 回答 1

4

我想这是Culture您机器的问题,因为它设置cultureen-Us. 因为路径值应该以逗号/空格分隔以便在您的情况下ToString()返回分号分隔值时进行解析。尝试CultureInfo.InvariantCulture在转换为时Geometry使用string。它将修复异常

string str = geometry.ToString(CultureInfo.InvariantCulture);
于 2013-10-19T08:56:56.993 回答