【发布时间】:2019-09-11 14:45:45
【问题描述】:
我想知道如何在不通过 UNC 路径从两个不同的 Microsoft 服务器打开或读取文件的情况下检查 Java 中的文件大小? 它用于接口引擎过滤器功能。所以没有 HTML DOM 等可用。
现在有效的方法: API中有一个Util函数
java.nio.file.Files.size(java.nio.file.Paths.get('/path/to/file')
由于错误而无法在 UNC PATHS 上运行:
Wrapped java.nio.file.AccessDeniedException: \\server\folder\file.pdf
使用示例:
var filePath = msg['path'].toString();
try{
var fileContent = java.nio.file.Files.size(java.nio.file.Paths.get(filePath));
var fileSize = fileContent / 1048576;
logger.debug("Filesize in MB: " + fileSize);
}
catch(e){
...
期望:一种通过 UNC 访问读取文件大小输出文件属性的方法
【问题讨论】:
-
您链接的文档是针对 Java API 而不是 JavaScript 的。
-
是的,你是对的。但连接器是用 javascript 编写的
-
您需要更新您的问题以反映您正在尝试通过 UNC 路径获取远程共享上的文件大小。应该删除 javascript 标记,因为在 mozilla rhino(mirth 使用)中没有针对此的纯 javascript 解决方案。您需要一个 Java 解决方案(这可能是一个重复的问题)并且转换为 mirth javascript 是微不足道的并且超出了范围这个问题。
-
您的 mirth 服务用户是否有权访问您尝试访问的共享和文件?