Vb6 Visual basic句柄十进制逗号
我试图将变量保存到文本文件中,捷克的排版规则让我发疯。 我正在调试的程序专用于捷克本地化的计算机,其中使用了十进制逗号,但VB使用的是普通的标准十进制点 加载文件时,正确加载“US”小数并显示为捷克小数。文本框中需要“捷克”小数。我的问题是程序生成捷克小数,需要“US”小数 如何强制VB程序将逗号读取为十进制符号而不是分隔符,或者如何使用点而不是逗号导出数据Vb6 Visual basic句柄十进制逗号,vb6,internationalization,decimal,Vb6,Internationalization,Decimal,我试图将变量保存到文本文件中,捷克的排版规则让我发疯。 我正在调试的程序专用于捷克本地化的计算机,其中使用了十进制逗号,但VB使用的是普通的标准十进制点 加载文件时,正确加载“US”小数并显示为捷克小数。文本框中需要“捷克”小数。我的问题是程序生成捷克小数,需要“US”小数 如何强制VB程序将逗号读取为十进制符号而不是分隔符,或者如何使用点而不是逗号导出数据 是的,我可以将123456加载为a=123和b=456,然后将值返回为a+b/1000,但是否有更优雅的解决方案?您的问题可能是由于使用了
是的,我可以将
123456
加载为a=123
和b=456
,然后将值返回为a+b/1000
,但是否有更优雅的解决方案?您的问题可能是由于使用了Val
功能;这不是国际性的。帮助文本建议在从字符串转换为数字时使用CDbl
选择正确的函数
,Val
将始终使用US设置(小数点)Str
,CDbl
格式将考虑区域设置李>
都在手册中。谢谢你的建议,我不确定我是否做错了什么,但我只得到了错误(即类型不匹配)或“捷克”小数点 我试过了,被打了一巴掌?狠狠地打他一巴掌A使用此代码进行搜索:
Dim PpP As String, SaveFile As Integer
PpP = Form1.TxtA10.Text & " " & Form1.TxtA11.Text
PpP = Replace(PpP, ",", ".")
Print #SaveFile, PpP
编辑:
某物意味着在输出端而不是输入端尝试这些功能。(就像尝试将Double作为字符串参数)
此代码:
Input #1,TempString
Form1.TxtA10.Text = CDbl(TempString)
同样有效 试试看
格式$(CDbl(Text1.Text),“#,##0.00”)
在您可以提到的几乎任何编程语言中,小数都用点表示,而不是逗号。如果您的用户需要逗号,请将其转换为显示和输入目的,但您需要在代码中使用一个点。希望您不要尝试使用输入#,它只用于读取由Write编写的数据,Write总是使用“通用”格式(在本例中,句点为小数点)。Spudley:是的,我知道,但windows使用三种符号:点、逗号和小数分隔符。其中两个看起来一样。在我的例子中,输出分隔符是从操作系统-逗号使用的,输入分隔符是编程语言原生点。首先使用
Dim f As Single:f=CDbl(Form1.TxtA10.Text)
将捷克字符串转换为一个数字,然后通过PpP=Str(f)