2014-04-11 2 views
0

차량 보관 애플리케이션을 개발 중입니다. 한 가지 기능은 서버를 별도의 드라이브로 매핑하지 않고도 원격 서버에 다른 형식 (단어, Excel, pdf)으로 문서를 저장할 수 있다는 것입니다.
열려있는 파일이 로컬 하드 드라이브 (예 : "C : /Documents/FileToOpen.docx")에있는 경우 모두 제대로 작동하지만 경로의 경로 구조를 파악할 수 없습니다 (예 : "C : /Documents/FileToOpen.docx "서버"SERVER06 "). "//SERVER06/C/Documents/FileToOpen.docx"및 그 순열을 시도했지만 지금까지는 기쁨이 없습니다.원격 서버의 파일 열기 [경로 문제]

public class Attachments extends javax.swing.JFrame { 

    String docPath = "C:/Program Files/Microsoft Office/Office14/WINWORD.EXE"; 
    String excelPath = "C:/Program Files/Microsoft Office/Office14/EXCEL.EXE"; 
    String pdfPath = "C:/Program Files/Adobe/Reader 11.0/Reader/AcroRd32.exe"; 

    /** 
    * Creates new form Attachments 
    */ 
    public Attachments() { 
     initComponents(); 

     setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); 
     this.setResizable(false); 

    } 

    public void setList(Set attachmentList) { 
     DefaultListModel model = new DefaultListModel(); 
     Iterator i = attachmentList.iterator(); 
     int counter = 0; 
     while (i.hasNext()) { 
      model.add(counter, (Attachment) i.next()); 
      counter++; 
     } 
     listAttachments.setModel(model); 
    } 

    //form generation 

    private void btnViewActionPerformed(java.awt.event.ActionEvent evt) { 
     Attachment a = (Attachment) listAttachments.getSelectedValue(); 
     String type = a.getAttachmentUrl().substring(a.getAttachmentUrl().indexOf(".")); 
     String prog = ""; 
     if (type.substring(0, 2).equals(".d")) { 
      prog = docPath; 
     } else if (type.substring(0, 2).equals(".p")) { 
      prog = pdfPath; 
     } else if (type.substring(0, 2).equals(".x")) { 
      prog = excelPath; 
     } 

     String commandString = "\"" + prog + "\" \"" + a.getAttachmentUrl() + "\""; 
     Runtime rt = Runtime.getRuntime(); 
     try { 
      rt.exec(commandString); 
     } catch (IOException ex) { 
      System.out.println(ex.getMessage()); 
      ex.printStackTrace(); 
     } 
    } 

    private void jButtonCloseActionPerformed(java.awt.event.ActionEvent evt) { 
     this.setVisible(false); 
     this.dispose(); 
    } 

이 방법이 있습니까?

+0

TCP/IP, 나는 믿습니다. –

답변

0

서버가 Windows 운영 체제를 사용한다고 가정하면 서버는 먼저 문서가 들어있는 폴더를 공유해야합니다. 이렇게하려면 서버로 이동하여 폴더를 선택하고 마우스 오른쪽 버튼으로 클릭 한 다음 '공유'를 선택하십시오. 확인하려면 클라이언트 컴퓨터로 돌아가서 Windows 탐색기를 열고 \ SERVER06을 입력하십시오. 폴더 공유가 성공하면 'Documents'라는 폴더가 표시됩니다. 이 모든 것이 지금까지 괜찮 으면 응용 프로그램은 "\\ SERVER06 \ Documents \ FileToOpen.docx"를 사용하여 파일을 열면됩니다.

+1

Ok .... 금요일이어야합니다. "/"와 "\"를 잊었습니다. 데이터베이스는 "//SERVER06/Documents/FileToOpen.docx"를 저장하고있었습니다. "\\\\ SERVER06 \\ Documents \\ FileToOpen.docx"로 변경하고 정상적으로 작동합니다. 감사합니다. –