2012-12-14 3 views
0

서블릿을 개발 중이며 다른 컴퓨터의 공유 폴더에서 파일 (* .doc)을 내 서블릿 웹 응용 프로그램 공간으로 복사해야하지만 할 수 없습니다. . 문제는 아파치 서버에 쓰는 것이 아니라, 원격 폴더 (LAN의 공유 폴더)에서 파일을 복사하는 데 문제가 있습니다. 어떤 제안이나 생각?javaservlet의 공유 폴더에서 로컬 폴더로 파일 복사

File inFile = new File("\\\\192.168.2.103\\CompartidaMatias\\tablaEstudios.txt"); 
     out.println("<p> AbsolutePath --> " + inFile.getAbsolutePath() + "</p>"); 
     out.println("<p> Path --> " + inFile.getPath() + "</p>"); 
     out.println("<p> Nombre --> " + inFile.getName() + "</p>"); 
     out.println("<p> WEBAPP_ROOT --> " + WEBAPP_ROOT + "</p>"); 



     File outFile = new File(WEBAPP_ROOT + "mydoc3a.txt"); 

     if (inFile.exists()) 
      out.println("<p>FILE FOUND</p>"); 
     else 
      out.println("<p>FILE NOT FOUND</p>"); 

난 항상 파일을 찾을 수 없습니다받을 :(시간 친구에 대한 감사합니다! 나는 그것이 해결 될 수있는 희망,하지만 난 내 모든 생각을 보냈습니다 다시 한번 감사

답변

0

시도 !! :.

URL url = new URL("file:///192.168.2.103//CompartidaMatias//tablaEstudios.txt"); 
File inFile = new File(url.getFile()); 
+0

감사합니다. 나는 시험해 볼 것이다!! :) : P – Carol

+0

하지만 작동하지 않습니다 :(나는 잘못된 경로를 얻습니다 :(아파치에서 실행되는 서블릿에서 이것을 삼중으로하는 것을 기억하십시오. 어쩌면 윈도우 파일 시스템에 액세스 할 수 없거나 모르겠습니다. 오늘은 슬픈 금요일입니다. 미시시피 : 나는 농담이야 !! : P 슬프지 않은 금요일이야 !! :) 고맙습니다 !! – Carol

+0

나는 2 개의 PC에서 컴퓨터를 실행하고 있습니다. – Carol

1

이 은 어떻게하지 java.io.File 작품이다. 그것은하지 네트워크 리소스에 로컬 디스크 파일 시스템에서 작동합니다.

가장 좋은 방법은 당신의 오페라를하도록하는 것입니다 Ting 시스템 플랫폼은 네트워크 리소스를 가리키는 로컬 매핑 (가상 디스크의 종류)을 만들고 Windows를 사용하는 경우 디스크 문자도 할당합니다. 여기 Microsoft Windows 7 guide on the subject는 다음과 같습니다

enter image description here

그냥 가령하는 \\192.168.2.103를 매핑해야 Z:\.

new File("Z:/CompartidaMatias/tablaEstudios.txt"); 

(/\\만큼 좋은 작동합니다 그들을 탈출의 노력에서 당신을 저장)이 문제가 있음을

참고 : 일단 다음과 같이 파일을 찾을 수 있어야한다는 완료 서블릿과 전혀 관련이 없습니다. 그것은 단지 기본적인 Java 문제 일뿐입니다. main() 메소드 (이는 서블릿보다 훨씬 빠르고 쉬운 테스트가 가능함)를 사용하여 일반 Java 응용 프로그램에서 이것을 실행할 때 똑같은 문제가 발생합니다. 당신의 미래의 질문을 염두에 두십시오.