2011-09-09 7 views
0

をアップロードする方法を、私ははファイル私は、クライアント側でサーバー</p> <p>にクライアントからファイルをアップロードしよう

private void uploadFile(final FileTransfer fileTransfer) { 

    String destinationFile = "/home/nat/test.xls"; 
    InputStream fis = null; 
    FileOutputStream out = null; 
    byte buf[] = new byte[1024]; 
    int len; 
    try { 
     fis = fileTransfer.getInputStream(); 
     out = new FileOutputStream(new File(destinationFile)); 

     while ((len = fis.read(buf)) > 0) { 
      out.write(buf, 0, len); 
     } 

    } 
} 

ファイルを持っている、サーバー側のファイル入力

を持っていますサーバー上に作成されていますが空です デバッグすると、fisがヌルでないことがわかります

何か考えていますか?ここで

答えて

0

は私のコードの抜粋です:

try {  
     File fileData = new File(fileTransfer.getFilename());   

     // Write the content (data) in the file 
     // Apache Commons IO: (FileUtils) 
     FileOutputStream fos = FileUtils.openOutputStream(fileData); 
     // Spring Utils: FileCopyUtils 
     FileCopyUtils.copy(fileTransfer.getInputStream(), fos); 

     // Alternative with Apache Commons IO 
     // FileUtils.copyInputStreamToFile(fileTransfer.getInputStream(), fileData); 


    // Send the file to a back-end service 
    myService.persistFile(fileData); 

    } catch (IOException ioex) { 
     log.error("Error with io") 
    } 
    return fileTransfer.getFilename(); // this is for my javascript callback fn 

のApache CommonsのIOような操作(私も春Utilsのを使用)に使用するのは良いライブラリです。 Springのコンテキストがない場合は、Apacheでコメントのついた代替を使用してください(構文は確認されていません)。

関連する問題