初学者 求解..批量导入问题,有代码 求补充。
程序代码: private void 保存图片_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog(); //new一个方法
ofd.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); //定义打开的默认文件夹位置
ofd.ShowDialog(); //显示打开文件的窗口
fileNamePth = ofd.FileName; //获得选择的文件路径
textBox1.Text = fileNamePth;
extendedName = Path.GetExtension(fileNamePth); //获得文件扩展名
fileName1 = Path.GetFileName(fileNamePth); //获得文件名,其实它还包括了扩展名.
fileName1 = fileName1.Substring(0,fileName1 .Length-4);//截取它的文件名
string cnnstr = "provider=OraOLEDB.Oracle;data source=NJGIS;User Id=sde;Password=gis;";
OleDbConnection con = new OleDbConnection(cnnstr);
try
{
con.Open();
}
catch
{ }
OleDbCommand cmd = new OleDbCommand(cnnstr, con);
= CommandType.Text;
= cnnstr;
//for (int i=0; i < openFileDialog1.FileNames.Length; i++)
//{
FileStream file = new FileStream(fileNamePth, FileMode.Open, FileAccess.Read);
Byte[] imgByte = new Byte[file.Length];//把图片转成1Byte型二进制流
file.Read(imgByte, 0, imgByte.Length);//把二进制流读入缓冲区
= " insert into picture ( id,picda ) values (:id,:picda) ";//正常sql语句插入数据库
cmd.Parameters.Add("id", fileName1);
cmd.Parameters.Add("picda", System.Data.OleDb.OleDbType.Binary, imgByte.Length);
cmd.Parameters[1].Value = imgByte;
file.Close();
//}
try
{
cmd.ExecuteNonQuery();
MessageBox.Show("导入成功");
}
catch (System.Exception e1)
{
MessageBox.Show("插入错误" + e1);
}
}现在 没有for循环 可以一张一张添加...我想 实现批量上传 不知道怎么修改这段代码...希望有高手赐教哇.
不要说我不爱思考,实在是刚学 有些函数不知道怎么用,加之网上很少这个例子(可能自己水平不够)









