我是C#的新手
我有一个Textbox
,可以接受double_byte
字符串,用于输入/显示日期值。
现在我遇到了问题,我不知道如何解决这个问题。我用Google搜索,无法找到解决方案。
当我写Double_Byte
个字符( 2012/12/31 )时,我想在{{1}处将此值更改为( 2012/12/31 ) of TextBox或此Leave_Event
此TextBox的事件。那么,我该如何解决问题呢。
修改 - >我的解决方案是Window Application。
提前致谢。
答案 0 :(得分:4)
您应该可以使用Encoding.Default
将double_byte
字符串转换为single_byte
字符串
string singleByteString = Encoding.Default.GetString(Encoding.Default.GetBytes(inputText));
试验:
private void button1_Click(object sender, EventArgs e)
{
string inputText = textBox1.Text;
string singleByteString = Encoding.Default.GetString(Encoding.Default.GetBytes(inputText));
textBox2.Text = singleByteString;
textBox3.Text = inputText;
}
结果:
答案 1 :(得分:1)
感谢您的所有答案和兴趣
我搜索了一个解决方案,没有找到任何答案。最后,我从同事那里得到了一个很好的答案。
因此,我同意这个问题的答案。
using Microsoft.VisualBasic;
private void button1_Click(object sender, EventArgs e)
{
string inputText = textBox1.Text;
string singleByteString = Strings.StrConv(inputText, VbStrConv.Narrow, 0);
textBox2.Text = singleByteString;
textBox3.Text = inputText;
}
答案 2 :(得分:-1)
在数据库中发送文本框值时,将其解析为日期。
确保将该文本框的x值存储在数据库中作为DateTime数据类型。
解析可以按照以下方式完成>
double d = double.Parse(txtDate.text);
DateTime conv = DateTime.FromOADate(d);
或者最简单的方法是使用>>
DateTime.Parse(txtDate.Text);
希望这会对你有所帮助。