首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Java访问不同机器(WIndows,linux等)上的主机文件

问如何使用Java访问不同机器(WIndows,linux等)上的主机文件
EN

Stack Overflow用户
提问于 2013-02-04 17:57:57
回答 2查看 247关注 0票数 0

嗨,我正在尝试解析保存在不同机器上不同位置的主机文件。假设我可以拥有所有类型的机器(Windows、linux、mac等),请帮助我获得访问主机文件的权限。我希望在java中有一个完整的方法来解析主机文件,而不是底层系统。

到目前为止,我一直在windows中对主机文件的位置进行硬编码:

代码语言:javascript
复制
private final String mHostFileLocation =
                    "C:\\WINDOWS\\system32\\drivers\\etc\\hosts";

但我认为这不是个好主意。请告诉我如何在任何系统上解析主机文件。

EN

回答 2

Stack Overflow用户

发布于 2013-02-04 18:04:04

恐怕没有一种与平台无关的标准方法可以做到这一点。您只需拥有所有有效位置的列表:

代码语言:javascript
复制
String [] hostsLocations = {"C:\\WINDOWS\\system32\\drivers\\etc\\hosts", "/etc/hosts"};

然后尝试每一个,直到你找到一个存在的文件,或者从系统属性中进行一点操作系统嗅探,找出你在哪个操作系统上,并使用正确的位置,请注意,它真的没有那么多不同的位置。

票数 1
EN

Stack Overflow用户

发布于 2013-02-04 18:04:43

没有统一的方法来定位hosts文件。如果机器设置为只运行DNS,甚至可能没有DNS。

也就是说,在Mac上,该文件位于/private/etc/hosts中,而在Linux上,该文件通常位于/etc/hosts中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14684265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档