【发布时间】:2010-01-31 11:48:08
【问题描述】:
程序将设置文件保存为包含long double 类型的浮点数的文本。设置文件只能通过 GUI (GTK2) 保存,而文件也可以通过命令行加载,无需启动 GUI。
不幸的是,用户报告说,由于他的语言环境设置,在他保存的文件中,数字是用逗号格式化的,程序拒绝从命令行加载它们(发出错误消息),但似乎在GUI 已打开。
我已经问过以下问题:MPFR, printf, decimal places, locales, file i/o problem 建议使用setlocale(LC_ALL, "C"),我将它放在main 的开头。由于这不起作用,我在调用gtk_init_check 后放置了它,但同样,它没有任何区别。 (编辑在我安装了几个语言环境后确实有所不同。)
我希望程序对其保存的这些数据文件始终使用相同的语言环境设置(或非本地化语言环境设置 - “C”),但不希望这样做会弄乱 GUI。
怎么做?
【问题讨论】:
标签: c linux command-line gtk locale