0

次のコードは、Windows の下で Eclipse の魅力のように機能します。

public static void main(String[] args) 
{
    try
    {
        String filePath = "\\\\myserver\\dir";
        String fileName = "myFile.txt";
        FileWriter myFileWriter = new FileWriter(filePath + File.separator + fileName); 
        BufferedWriter myBufferedWriter = new BufferedWriter(myFileWriter);
        myBufferedWriter.write("test");
        myBufferedWriter.close();       
    }
    catch (Exception e) 
    {
        e.printStackTrace();
    }
}

今、同じネットワーク内の UNIX マシンからこのコードを実行したいと考えています。プログラムは実行されますが、ファイルが書き込まれないか、例外がスローされます。アイデアはありますか?

乾杯

4

2 に答える 2

1

宛先の UNIX マシンに Samba がインストールされている場合は、次のライブラリを試してください。

http://jcifs.samba.org/

ただし、ユーザー名とパスワードが必要です。

try {
        String filePath = "myserver/dir";
        String fileName = "myFile.txt";
        String user = "username";
        String password = "password";
        // URL: smb://user:passwd@host/share/filname
        SmbFileOutputStream out = new SmbFileOutputStream("smb://" + user + ":" + password + "@" + filePath
                + File.separator + fileName);
        out.write("test".getBytes());
        out.close();
    } catch (Exception e) {
        e.printStackTrace();
    }

これは、サーバーが SMB サーバーとして構成されている場合、宛先として Windows マシンでも機能します。

于 2013-07-24T11:20:31.613 に答える