我编写了一个代码并希望转换值,如果用户写入12,则应将其转换为“12.00” Reffered link
我参考了上面的链接并获得了“格式化”功能但是当我在项目中尝试它时,它将值转换为“0.00”
我的代码我写在下面......
Private Sub txtDisc_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles txtDisc.KeyDown
If e.KeyCode = Keys.Return Then
txtDisc.Text = Format(txtDisc.Text, "0.00")
txtOpeningBal.Focus()
End If
End Sub
如果我在编写代码时犯了错误,请帮助我。
我对这个功能全新,并且看到msdn有帮助但无法理解它......
答案 0 :(得分:9)
在将字符串$select = $dbh1->prepare("SELECT * FROM profile");
$insert = $dbh2->prepare("INSERT INTO PROFILE VALUES (?,?,?,?,?)");
$select->execute;
while ( my @row = $select->fetchrow_array ) {
$insert->execute(@row);
print "each row" + @row;
}
**Copy from:**
CREATE TABLE `profile` (
`ID` bigint(20) NOT NULL,
`NAME` varchar(128) COLLATE utf8_bin NOT NULL,
`PARENTID` bigint(20) NOT NULL,
`TYPE` varchar(128) COLLATE utf8_bin NOT NULL,
`KEY` varchar(1000) COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `PR_PARENT` (`PARENTID`,`NAME`),
CONSTRAINT `PROFILE_PARENTID` FOREIGN KEY (`PARENTID`) REFERENCES `profile` (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
传递给CREATE TABLE `PROFILE` (
`ID` bigint(20) NOT NULL,
`NAME` varchar(128) NOT NULL,
`PARENTID` bigint(20) NOT NULL,
`TYPE` varchar(128) NOT NULL,
`KEY` varchar(1000) DEFAULT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `PR_PARENT` (`PARENTID`,`NAME`),
CONSTRAINT `PROFILE_PARENTID` FOREIGN KEY (`PARENTID`) REFERENCES `PROFILE`
(`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
方法之前,您需要将其转换为数字值。
你可以做类似的事情:
txtDisc.Text
或者您可以解析该值,并使用.Net方法(而不是VB6兼容性方法),如下所示:
Format()
答案 1 :(得分:4)
首先,您必须解析文本输入以获取数值。然后你可以按照自己的意愿格式化它。
txtDisc.Text = Format(Val(txtDisc.Text), "0.00")
注意:Val
函数是旧方法,建议通过Double.Parse()
,但我想在这个简单的例子中,你不关心。
答案 2 :(得分:2)
您必须将文本值转换为数字(可能是两倍?)以执行格式化。
检查此示例:
Sub Main()
Dim s As String = "12"
Dim d As Double = Double.Parse(s)
Console.WriteLine(d.ToString("#,##0.00"))
Console.WriteLine(d.ToString("C1"))
Console.WriteLine(d.ToString("C3"))
Console.WriteLine(String.Format("{0:C2}", d))
Console.WriteLine(String.Format("{0:C5}", d))
Console.ReadLine()
End Sub
" C"是货币