如何在 VC++ 中读取 TextBox 值而不进行转换
How to read TextBox values without conversion in VC++
我用 Visual Studio 2013 构建了一个表单,我使用的是 C++。
我的目标是从文本框中读取值并将它们写入二进制文件。
我遇到的问题是,当我输入一个十六进制值时,它仍然被转换为十六进制,我想不转换就写它。
Char id1= Convert::ToByte(textBox1->Text);
UInt16 id2= Convert::ToInt16(textBox2->Text);
UInt32 id3= Convert::ToInt32(textBox3->Text);
String^ fileName = "id.id";
FileStream^ fileStr = gcnew FileStream(fileName, FileMode::Append);
BinaryWriter^ binwr = gcnew BinaryWriter(fileStr);
binwr->Write(id1);
binwr->Write(id2);
binwr->Write(id3);
fileStr->Close();
binwr->Close();
因此,如果我输入 8041,我希望在二进制文件中包含 8041 而不是 1f08。
谢谢
基于@Some programmer dude 的评论
UInt16 id2= Convert::ToInt16(textBox2->Text, 16);
是正确答案。
谢谢@Some程序员哥们!
我用 Visual Studio 2013 构建了一个表单,我使用的是 C++。 我的目标是从文本框中读取值并将它们写入二进制文件。
我遇到的问题是,当我输入一个十六进制值时,它仍然被转换为十六进制,我想不转换就写它。
Char id1= Convert::ToByte(textBox1->Text);
UInt16 id2= Convert::ToInt16(textBox2->Text);
UInt32 id3= Convert::ToInt32(textBox3->Text);
String^ fileName = "id.id";
FileStream^ fileStr = gcnew FileStream(fileName, FileMode::Append);
BinaryWriter^ binwr = gcnew BinaryWriter(fileStr);
binwr->Write(id1);
binwr->Write(id2);
binwr->Write(id3);
fileStr->Close();
binwr->Close();
因此,如果我输入 8041,我希望在二进制文件中包含 8041 而不是 1f08。
谢谢
基于@Some programmer dude 的评论
UInt16 id2= Convert::ToInt16(textBox2->Text, 16);
是正确答案。
谢谢@Some程序员哥们!