2013-08-15 8 views
4

Windows 공유를 사용하여 서버에 폴더를 공유했습니다. 내 코드를 실행중인 다른 컴퓨터에서 해당 폴더를 가리키는 네트워크 드라이브를 매핑했습니다.네트워크 경로 또는 드라이브가있는 Java를 사용하여 원격 위치에 파일을 작성 하시겠습니까?

내 코드에서 필자는 로컬 컴퓨터의 파일을 서버로 전송합니다. 다음과 같이 입력하십시오 :

File srcFile = new File("C:\\test.mpg"); 
File destFile = new File(...); 

// error checking 
FileUtils.moveFile(srcFile, destFile); 

destFile의 경우 어떤 방법을 사용해야합니까? 나의 현재의 접근 방식 :

File destFile = new File("Z:\\folder\\test.mpg"); 

또는 네트워크 경로를 사용하여 :


File destFile = new File("\\192.168.123.123\\folder\\test.mpg"); 
나는 내 프로그램에 쓸 수 없기 때문에 파일 전송이 실패 최근에 내가 발견 한 경우 때문에이 물어 내 네트워크 드라이브가 로그온되어 있지 않기 때문에 수동으로 드라이브에 가서 자격 증명을 입력하고 "연결 유지"옵션을 활성화해야합니다.

답변

5

매핑 된 드라이브 또는 전체 네트워크 경로를 동등하게 사용할 수 있습니다. Java는 상관하지 않고 파일 이름을 OS로 전달합니다. 네트워크 경로를 사용하는 경우 처음에는 \\\\이 필요합니다.

3

JCIFS 라이브러리를 사용하여 Java의 Windows SMB 공유에 액세스 할 수 있습니다. 그것을 사용하면 다음과 같은 것을 할 수 있습니다 :

+1

도메인이 있으면 도메인처럼 사용해야합니다. 사용자 : password 예 String smbUrl = "smb : // 도메인; 사용자 이름 : password @ server/공유/파일 "; –