0
数组首先这里是,即时通讯试图去工作 -的Visual C++错误读取文件流,并转换为字符
private: System::Void openToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
OpenFileDialog^ dlg = gcnew OpenFileDialog();
dlg->Filter = "Text Files|*.txt";
String^ stream;
if(dlg->ShowDialog()==Windows::Forms::DialogResult::OK)
{
txtOutput->Text = System::IO::File::ReadAllText(dlg->FileName);
char* num = (char*)(void*)Marshal::StringToHGlobalAnsi(stream); //Convert string to array of char
for (int i=0;i<stream->Length;++i) //ERRONEOUS LINE!!
{
num[i] = num[i]^key; //DECRYPT
}
String^ orig_stream = gcnew String(num);
txtOutput->Text = orig_stream;
}
}
我试着去打开它已经被加密的文件中的代码。程序编译W/O任何错误,但是在运行时它给我的选项下面的错误决裂,继续或中止:
An unhandled exception of type 'System.NullReferenceException' occurred in Project_Targaryen.exe
Additional information: Object reference not set to an instance of an object.
错误指向的循环线。 任何帮助表示赞赏!
它看起来像流永远不会分配一个对象实例。 – DRH 2011-12-29 17:42:41
哦,耶稣基督!基本错误!抱歉!!并感谢一吨! – arijeet 2011-12-29 17:58:27