How to read a file from remote system using java?

后端 未结 8 1080
忘了有多久
忘了有多久 2020-12-06 05:18

I have a file copied in one computer and I need to access the file from other computer. I am not sure, which protocol or which technology to use for this? Please provide me

相关标签:
8条回答
  • 2020-12-06 05:59

    You can read from remote and write to remote using jcifs-1.3.15.jar jar in java but first you need to share location from remote system then it's possible.

    try{
                String strLine="";    
                NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("WORKGROUP", "username", "passwd"); // Authentication info here, domain can be null
        //        try (InputStream is = new SmbFile("smb://DESKTOP-0xxxx/usr/local/cache/abc.txt", auth).getInputStream()) {
                try (InputStream is = new SmbFile("smb://xx.xx.xx.xxx/dina_share/abc.txt", auth).getInputStream()) {
                    BufferedReader br = new BufferedReader(new InputStreamReader(is));
                while ((strLine = br.readLine()) != null) {
                    System.out.println(strLine);
                }
                } catch (IOException e) {
                    e.printStackTrace();
                }
                String smbURL="smb://xx.xx.xx.xxx/dina_share/abcOther.txt";
                SmbFileOutputStream fos = new SmbFileOutputStream(new SmbFile(smbURL,auth));
                byte bytes[]="Wellcome to you".getBytes();
                fos.write(bytes);
            }catch(Exception e){
                e.printStackTrace();
            }
    
    0 讨论(0)
  • 2020-12-06 06:04

    Share the directory and access the file thruogh java code try this one:

    File f = new File("//10.22.33.122/images")
    
    File[] files = f.listFiles(new FilenameFilter() {
        public boolean accept(File dir, String name) {
            // Specify the extentions of files to be included.
            return name.endsWith(".bmp") || name.endsWith(".gif");
        }
    });
    
    // get names of the files
    String[] fileNamesArray = null; 
    for (int indx = 0; indx < files.length(); indx++) {
        fileNamesArray[indx] = files[indx].getName();
    }
    
    return fileNamesArray; 
    
    0 讨论(0)
  • 2020-12-06 06:12

    if the remote computer is in the same network and on a shared folder to the computer where your java code is running then try this piece of code for accessing it

    File file = new File("\\\\Comp-1\\FileIO\\Stop.txt");
    

    here Comp-1 is the DNS name of the machine containing the file in the network!!!

    0 讨论(0)
  • 2020-12-06 06:15

    HTTP is an option. However, if these are Windows machines on the same LAN, it would be easier to expose the directory on the remote machine via a file share and access the file through a regular file path. Similarly, if these are Unix-like machines, you could use regular file paths if you're using NFS. FTP's yet another option.

    0 讨论(0)
  • 2020-12-06 06:16

    Map your IP to network drive and try let us say the drive letter is X,

    then code changes to File f = new File("x:\\home\\renjith\\picture.jpg");

    Infact your file is already loaded in object f , try priting the value of the path f.getAbsolutePath() to console and see.. Actual error is with ImageIO

    0 讨论(0)
  • 2020-12-06 06:17

    You might try:

    URL url = new URL("file://192.168.1.157/home/renjith/picture.jpg");
    Image image = ImageIO.read(url); 
    
    0 讨论(0)
提交回复
热议问题