gpt4 book ai didi

c# - 为什么将字符串路径转换为 ​​Geometry 并再次返回会抛出 FormatException?

转载 作者:行者123 更新时间:2023-11-30 22:12:55 25 4
gpt4 key购买 nike

我需要将字符串路径转换为 ​​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!
这怎么可能?我该如何解决?

最佳答案

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

string str = geometry.ToString(CultureInfo.InvariantCulture);

关于c# - 为什么将字符串路径转换为 ​​Geometry 并再次返回会抛出 FormatException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19464064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com