Как преобразовать двухбайтовую строку в однобайтовую строку?

Я новичок в C#.
у меня есть Textbox и это разрешено принимать double_byte строка и используется для ввода / отображения значения даты. Теперь у меня проблема, и я не знаю, как ее решить. Я погуглил об этом и не могу найти решения.
Когда я написал Double_Byte Символы (2012/12/31), я хочу изменить это значение на (2012/12/31) в Leave_Event TextBox или Text_Changed Событие этого TextBox. Итак, как я могу решить проблему.

Правка-> Мое решение - оконное приложение.

Заранее спасибо.

3 ответа

Решение

Спасибо за все ваши ответы и интересы.
Я искал решение для этого и не нашел никакого ответа. Наконец, я получил хороший ответ от моего коллеги. Поэтому я делюсь ответом на эту проблему.

  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;
}

Вы должны быть в состоянии использовать 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;
    }

Результат:

Когда вы отправляете значение вашего текстового поля в базу данных, проанализируйте его в Date.

Убедитесь, что вы сохраняете значение этого текстового поля в базе данных как тип данных DateTime.

Разбор может быть выполнен следующим образом>

double d = double.Parse(txtDate.text);
DateTime conv = DateTime.FromOADate(d);

Или самый простой способ использования >>

DateTime.Parse(txtDate.Text);

Надеюсь, что это поможет вам.

Другие вопросы по тегам