C#读取大文件(四)_休闲    }    
C#读取大文件(四)_休闲            prgLoader.Value = 100;    
C#读取大文件(四)_休闲            lblShowPercent.Text = prgLoader.Value.ToString() + "%";    
C#读取大文件(四)_休闲            btnOk.Text = "关闭";    
C#读取大文件(四)_休闲         }    
C#读取大文件(四)_休闲        }    
C#读取大文件(四)_休闲        else    
C#读取大文件(四)_休闲        {    
C#读取大文件(四)_休闲         if(intCount == 0)    
C#读取大文件(四)_休闲         {    
C#读取大文件(四)_休闲            strSelect = strTargetSelect;    
C#读取大文件(四)_休闲            sqlcmd.CommandText = strSelect;    
C#读取大文件(四)_休闲            bytContent = new byte[intLength];    
C#读取大文件(四)_休闲            bytContent = sqlcmd.ExecuteScalar() as byte[];    
C#读取大文件(四)_休闲            fs.Write(bytContent,0,intLength);    
C#读取大文件(四)_休闲         }    
C#读取大文件(四)_休闲         else    
C#读取大文件(四)_休闲         {    
C#读取大文件(四)_休闲            int i = 0;    
C#读取大文件(四)_休闲            bytContent = new byte[intBlock];    
C#读取大文件(四)_休闲            while(i < intCount)    
C#读取大文件(四)_休闲            {    
C#读取大文件(四)_休闲             strSelect = "declare @content varbinary(16) "; //再sql中声明获取目标p_w_picpath列内容的句柄变量    
C#读取大文件(四)_休闲             strSelect += strTargetHandle; //获取句柄    
C#读取大文件(四)_休闲             //锁定并读取指定长度的数据    
C#读取大文件(四)_休闲             strSelect += " readtext " + strTableName + "." + strColumnName + " @content @start @count HOLDLOCK";    
C#读取大文件(四)_休闲             if(i == 0)    
C#读取大文件(四)_休闲             {    
C#读取大文件(四)_休闲                //添加@start和@count变量,分别表偏移变量和取的长度    
C#读取大文件(四)_休闲                sqlcmd.Parameters.Add("@start",System.Data.SqlDbType.Int).Value = 0;    
C#读取大文件(四)_休闲                sqlcmd.Parameters.Add("@count",System.Data.SqlDbType.Int).Value = intBlock;    
C#读取大文件(四)_休闲             }    
C#读取大文件(四)_休闲             else    
C#读取大文件(四)_休闲             {    
C#读取大文件(四)_休闲                sqlcmd.Parameters["@start"].Value = i * intBlock;    
C#读取大文件(四)_休闲                sqlcmd.Parameters["@count"].Value = intBlock;    
C#读取大文件(四)_休闲             }    
C#读取大文件(四)_休闲             sqlcmd.CommandText = strSelect;    
C#读取大文件(四)_休闲             bytContent = sqlcmd.ExecuteScalar() as byte[];    
C#读取大文件(四)_休闲 fs.Write(bytContent,0,intBlock);    
C#读取大文件(四)_休闲             ++i;    
C#读取大文件(四)_休闲
C#读取大文件(四)_休闲            }    
C#读取大文件(四)_休闲            //将剩余的字节写入流    
C#读取大文件(四)_休闲            int intResidual = intLength % intBlock;    
C#读取大文件(四)_休闲            if(intResidual > 0)    
C#读取大文件(四)_休闲            {    
C#读取大文件(四)_休闲             strSelect = "declare @content varbinary(16) "; //再sql中声明获取目标p_w_picpath列内容的句柄变量    
C#读取大文件(四)_休闲             strSelect += strTargetHandle; //获取句柄    
C#读取大文件(四)_休闲             //锁定并读取指定长度的数据    
C#读取大文件(四)_休闲             strSelect += " readtext " + strTableName + "." + strColumnName + " @content @start @count HOLDLOCK";    
C#读取大文件(四)_休闲             bytContent = new byte[intResidual];    
C#读取大文件(四)_休闲             sqlcmd.Parameters["@start"].Value = intCount * intBlock;    
C#读取大文件(四)_休闲             sqlcmd.Parameters["@count"].Value = intResidual;    
C#读取大文件(四)_休闲             sqlcmd.CommandText = strSelect;    
C#读取大文件(四)_休闲             bytContent = sqlcmd.ExecuteScalar() as byte[];    
C#读取大文件(四)_休闲             fs.Write(bytContent,0,intResidual);    
C#读取大文件(四)_休闲
C#读取大文件(四)_休闲            }    
C#读取大文件(四)_休闲         }    
C#读取大文件(四)_休闲
C#读取大文件(四)_休闲        }    
C#读取大文件(四)_休闲         bytContent = null;    
C#读取大文件(四)_休闲         fs.Close();    
C#读取大文件(四)_休闲     }    
C#读取大文件(四)_休闲     catch    
C#读取大文件(四)_休闲     {    
C#读取大文件(四)_休闲            state = 0;    
C#读取大文件(四)_休闲            System.IO.File.Delete(strPath);    
C#读取大文件(四)_休闲                                    bytContent = null;    
C#读取大文件(四)_休闲                                    fs.Close();    
C#读取大文件(四)_休闲            return false;    
C#读取大文件(四)_休闲     }    
C#读取大文件(四)_休闲     state = 0;    
C#读取大文件(四)_休闲     return true;    
C#读取大文件(四)_休闲    }