如何将双字节字符串转换为单字节字符串?

我是C#的新手。
我有一个Textbox ,允许接受double_byte字符串,它用于输入/显示日期值 。 现在我遇到了问题,我不知道如何解决这个问题。我用Google搜索了一下,找不到任何解决办法。
当我写Double_Byte Characters( Double_Byte )时,我想在TextBox的Text_Changed或此TextBox的Text_Changed事件中将此值更改为( Leave_Event )。 那么,我该如何解决这个问题呢。

编辑 – >我的解决方案是窗口应用程序。

提前致谢。

您应该能够使用Encoding.Defaultdouble_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. 添加引用Microsoft.VisualBasic
  2. 写这样的代码(测试像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); 

希望这会帮助你。