下面的代码就像在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机器运行此代码。程序运行,但不写我的文件或抛出异常。任何想法?
干杯
答案 0 :(得分:1)
如果目标unix机器安装了Samba,您可能需要尝试以下库:
你需要一个用户名和密码。
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计算机。
答案 1 :(得分:0)
因为在Unix / Linux中这不是正确的路径
String filePath = "\\\\myserver\\dir";
我建议检查此类路径是否存在,并且99%的可能性您无权创建它们。这或多或少
String filePath =“/ usr / xx /”;
创建文件夹:
File temp = new File("temp");
boolean test = temp.mkDir();