如何获取此代码的警告消息?
byte[] imageBt = null;
FileStream fstream = new FileStream(this.textBox1.Text, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fstream);
imageBt = br.ReadBytes((int)fstream.Length);
我有一个PictureBox
并且它是空的,每次我点击“保存”按钮时都会显示错误:
答案 0 :(得分:1)
从异常文本开始 - 此错误与pictureBox
的空虚无关,但您还没有指定要将数据写入的文件名(因为textBox1
不包含任何文字。)
所以添加支票
if (string.IsNullOrEmpty(this.textBox1.Text))
{
//do whatever you need, show your warning
}
答案 1 :(得分:1)
您在这里使用空路径名称:
new FileStream(this.textBox1.Text, FileMode.Open, FileAccess.Read)
为了防止这种情况,首先检查路径名是否为空:
if (string.IsNullOrWhiteSpace(this.textBox1.Text))
{
// the input is empty, show an error?
}
基本上,如果出现错误情况,请停止处理请求并将控制返回给用户,并显示某种错误消息。这个 可以像MessageBox()
和return;
一样简单。
答案 2 :(得分:1)
处理用户输入时,应始终对其进行验证以确保其有效。在这种特殊情况下,错误告诉您textBox1.Text
值为空。你应该检查一下:
if (String.IsNullOrEmpty(textBox1.Text))
{
//input is empty, error?
}
当您尝试加载文件时,最好确保该文件存在:
if (!File.Exists(textBox1.Text))
{
//file doesn't exist, error?
}
与往常一样,可以进行额外的验证检查,例如:
但是在某些时候你必须画出关于多少支票太多的界限。
答案 3 :(得分:-1)
如果您确实需要错误消息,请将代码包装在try catch块中,如:
try
{
byte[] imageBt = null;
FileStream fstream = new FileStream(this.textBox1.Text, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fstream);
imageBt = br.ReadBytes((int)fstream.Length);
}
catch(Exception error)
{
}