public void ReciveFile(String AttachID){
if(gbl_Main.gbl_State.equals("offline")){
JOptionPane.showMessageDialog(this, "离线状态下不能接收文件!","提示",JOptionPane.INFORMATION_MESSAGE);
}else{
if(gbl_Main.gbl_ErrorCounter==0){
try {
File FileSave=null;
JFileChooser fcSave=new JFileChooser();
File DefaultFile;
if(gbl_LastSavePatch==""){
String s = System.getProperty("user.dir");
DefaultFile=new File(s+"/temp");
if((DefaultFile.exists()==false)&&(DefaultFile.isDirectory()==false)){
DefaultFile.mkdir(); //创建目录
}
fcSave.setSelectedFile(new File(s+"/temp/"+jLabel3.getText().replaceFirst(" 文件名:", "")));
}else{
DefaultFile=new File(gbl_LastSavePatch);
if((DefaultFile.exists()==false)&&(DefaultFile.isDirectory()==false)){
DefaultFile.mkdir(); //创建目录
}
fcSave.setSelectedFile(new File(gbl_LastSavePatch+"/"+jLabel3.getText().replaceFirst(" 文件名:", "")));
}
int Selection=fcSave.showDialog(jLabel1, "保存");
fcSave.setVisible(true);
if(Selection==0){
FileSave=fcSave.getSelectedFile();
}
String sql = "select FILE_NAME,ATTACHMENT from SESSION_ATTACHMENT where ATTACH_ID='"+ AttachID +"'";
SQL_OPERATION SQL = new SQL_OPERATION(gbl_Main);
SQL.pstmt(sql);
ResultSet rs = SQL.executeQuery();
// PreparedStatement pst = gbl_Main.cn.prepareStatement(sql);
// ResultSet rs = pst.executeQuery();
if (rs.next()) {
String FileName=rs.getString("FILE_NAME").trim();
InputStream fis=rs.getBinaryStream("ATTACHMENT");
File newFile=new File(FileSave.getPath());
gbl_LastSavePatch=FileSave.getParent();
if(!newFile.exists())
newFile.createNewFile();
FileOutputStream out=new FileOutputStream(newFile);
int count;
byte buffer []=new byte[1024];
while((count=fis.read(buffer))!=-1){
for(int i=0;i
out.write(buffer[i]);
}
}
fis.close();
out.close();
}
rs.close();
//pst.close();
SQL.close();
sql="UPDATE SESSION_ATTACHMENT_RECEIVER SET RECEIVER_TIME=getdate() where RECEIVER='"+ gbl_Main.gbl_UserID +"' and ATTACH_ID='"+ AttachID +"' AND SESSION_ID='"+ gbl_SessionID +"'";
//-pst=gbl_Main.cn.prepareStatement(sql);
//SQL.Connect();
SQL.pstmt(sql);
SQL.executeUpdate();
// pst.executeUpdate();
gbl_AttachID="";
JOptionPane.showMessageDialog(this, "文件接收成功!/n 存放路径:"+FileSave.getPath());
jPanel8.setVisible(false);
gbl_SplitPaneWide=120;
Dimension frameSize = this.getSize();
int left = frameSize.width - this.jSplitPane1.getDividerSize() - gbl_SplitPaneWide;
this.jSplitPane1.setDividerLocation(left);
int height=frameSize.height;
this.jSplitPane3.setDividerLocation(height);
this.jPanel7.setSize(this.jPanel6.WIDTH, this.jPanel9.HEIGHT-this.jPanel6.HEIGHT);
//System.out.println("last height="+this.jSplitPane3.);
} catch (SQLException ex) {
Logger.getLogger(CHAT_FRAME.class.getName()).log(Level.SEVERE, null, ex);
}
catch (IOException ex) {
Logger.getLogger(CHAT_FRAME.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}