我正在尝试创建一个文件从一个服务器到另一个。服务器A执行脚本,需要在服务器b上创建一个文件。服务器A有一个脚本,创建文件夹没有问题(没有权限被拒绝或任何),并在创建文件夹后调用以下代码:
byte[] btDataFile = new sun.misc.BASE64Decoder().decodeBuffer(base64);
File of = new File("driverLetter:folder_pathfilename.png");
FileOutputStream osf = new FileOutputStream(of);
osf.write(btDataFile);
osf.flush();
"base64"是一个base64字符串表示的png图像,我需要创建一个文件。字符串的值很长,所以我不能把它放在这里,但它在那里,不空,不空,它有一个值。但是代码抛出错误:
"Can't read input file!"
为什么脚本可以读取"输入文件"?由于
在文件路径中使用正斜杠。或者用\
转义反斜杠
您需要使用转义字符,因为java保留了反斜杠。试试像这样的双反斜杠
File of = new File("driverLetter:\folder_path\filename.png");
还建议使用
File.separator