如何将双字节字符串转换为单字节字符串?
我是C#的新手。
我有一个Textbox
,允许接受double_byte
字符串,它用于输入/显示日期值 。 现在我遇到了问题,我不知道如何解决这个问题。我用Google搜索了一下,找不到任何解决办法。
当我写Double_Byte
Characters( Double_Byte
)时,我想在TextBox的Text_Changed
或此TextBox的Text_Changed
事件中将此值更改为( Leave_Event
)。 那么,我该如何解决这个问题呢。
编辑 – >我的解决方案是窗口应用程序。
提前致谢。
您应该能够使用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; }
结果:
感谢您的所有答案和兴趣。
我搜索了一个解决方案,没有找到任何答案。最后,我从同事那里得到了一个很好的答案。 因此,我分享了这个问题的答案。
- 添加引用Microsoft.VisualBasic
- 写这样的代码(测试像sa_ddam213的答案 ) –
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; }
在数据库中发送文本框值时,将其解析为日期。
确保将该文本框的x值存储在数据库中作为DateTime数据类型。
解析可以按如下方式完成>
double d = double.Parse(txtDate.text); DateTime conv = DateTime.FromOADate(d);
或者最简单的方式使用>>
DateTime.Parse(txtDate.Text);
希望这会帮助你。