当前位置: 首页 > 面试题库 >

如何从共享位置Windows读取文件?(Java)

方兴旺
2023-03-14
问题内容

有没有办法从Windows上的网络共享位置读取文件?

例如,假设我有这个简单的代码,该代码从 Addons 文件夹中读取一个名为 readMe.txt 的文本文件。 __

import java.io.File;

class Sample{

    public static void main(String[] ar){
        File file = new File("Addons/ReadMe.txt");
        System.out.println(file.getAbsolutePath());
      //followed by printing the contents of file   
    }
}

我使用Windows批处理 runme.bat 执行该文件,

java Sample
PAUSE

仅当我将带有ReadMe.txt,Sample.class,runme.bat文件的Addons文件夹放置在本地驱动器中时,蝙蝠才会运行并执行上述类。

将其放置在具有UNC路径的网络共享位置时,例如 \\ name \ Shared

在这种情况下,bat文件通常从 C:\ Windows* 启动基础并抛出classNotFoundException。我宁愿将共享驱动器映射到

Z:*** 驱动器或其他驱动器,但我不想这样做。

我希望代码以编程方式检测并检索Addons文件夹中Readme.txt的内容,而不管它是在本地驱动器上还是在共享驱动器上执行。有没有办法做到这一点?请帮忙..

谢谢

维凯


问题答案:

两种方式。

1)将共享路径映射到本地驱动器。

2)如Medopal所述,在新File(’‘)中将服务器路径硬编码。

new File("").getAbsolutePath()在本地系统上执行时,类似的东西可能会帮助我获取基本Folder。同样,当在共享位置上执行时,也没有这种方法可以通过编程方式找到工作库。



 类似资料:
  • 问题内容: 我知道如何读取字节,但是如何在Python中读取位? 我只需要从二进制文件中读取5位(而不是8位[1字节]) 有什么想法或方法吗? 问题答案: Python一次只能读取一个字节。您需要读完整的字节,然后从该字节中提取所需的值,例如 或者,如果您想要5个最低有效位,而不是5个最高有效位: 一些其他有用的位操作信息可以在这里找到:http : //wiki.python.org/moin/

  • 问题内容: 我有几个不同的过程,我希望它们全部记录到同一个文件中。这些进程在Windows 7系统上运行。有些是python脚本,有些是批处理文件。 在Unix下,您只需让所有人以附加模式打开文件并注销即可。只要每个进程在单个消息中写入的字节数少于字节,就可以确保每个调用都不会交叉。 有没有办法在Windows下实现这一目标?像Unix这样幼稚的方法失败了,因为Windows不喜欢一个以上的进程,

  • 我有一个问题,我试图拆分一个文件沿着n个字符长度的记录为一个分布式系统。我有分解记录并将其映射到记录级别上的专有名称的功能,但需要从文件到系统,再分解文件并将其以n个长度大小的片段传递给节点进行分割和处理。

  • 问题内容: 我在JAR文件中有一个文件。这,例如。 我该如何访问?我的源代码是: 问题答案: 您不能使用File,因为此文件在文件系统上并不独立存在。相反,您需要getResourceAsStream(),如下所示:

  • 您可以使用共享文件夹 Microsoft 管理控制台 (MMC) 管理单元集中管理计算机上的文件共享。共享文件夹允许您创建文件共享和设置权限,查看和管理打开的文件以及连接到计算机上文件共享的用户。

  • 我想让我的Jmeter从一个位置读取多个csv文件,比如C:\Jmeter\file。 当前,如果我在csv数据集配置下的'filename'中提供特定的csv文件名,Jmeter会识别该文件并执行我的脚本。 我不想对文件名进行硬编码,我想让jmeter从该位置自动读取。 我已经编写了BeenShell预处理器(因为我找不到任何简单的解决方案),这个程序从位置读取所有csv文件列表,并将它们存储在