java中获取文件路径

2023-11-27

java程序有没有办法确定它在文件系统中的位置?


您可以使用CodeSource#getLocation()为了这。这CodeSource可以通过ProtectionDomain#getCodeSource(). The ProtectionDomain反过来又可以通过Class#getProtectionDomain().

URL location = getClass().getProtectionDomain().getCodeSource().getLocation();
File file = new File(location.getPath());
// ...

这将返回的确切位置Class有问题。

Update:根据评论,它显然已经在类路径中。然后你就可以使用ClassLoader#getResource()其中传递根包相对路径。

ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
URL resource = classLoader.getResource("filename.ext");
File file = new File(resource.getPath());
// ...

您甚至可以将其作为InputStream using ClassLoader#getResourceAsStream().

InputStream input = classLoader.getResourceAsStream("filename.ext");
// ...

这也是使用打包资源的正常方式。如果它位于包内,则使用例如com/example/filename.ext反而。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中获取文件路径 的相关文章

  • 为什么用java日历解析时会得到错误的月份

    Date fakeDate sdf parse 15 07 2013 11 00 AM Calendar calendar Calendar getInstance calendar setTime fakeDate int current
  • 从 Windows Batch (cmd.exe) 中的文件读取环境变量

    我正在尝试从批处理文件中读取变量 以便稍后在批处理脚本 Java 启动器 中使用 理想情况下 我希望所有平台 Unix Windows 上的设置文件都具有相同的格式 并且也是有效的 Java 属性文件 也就是说 它应该看起来像这样 sett
  • 获取文本文件中行的字节偏移量?

    我有一个文本文件 例如 one two three four five 我需要获取文件中每一行的偏移量 我如何在 Java 中做到这一点 我搜索了一些 I O 库 如 BufferedReader 和 RandomAccessFile 但我
  • rmi类找不到异常

    我使用 java rmi 编写了一个简单的项目并导出到可执行 jar 文件 当我尝试运行它时 有时会出现异常 有时会起作用 当我指定 Djava rmi server codebase file serverClasses 时 它似乎没有正
  • 无法从 PDFA1-a 格式文档中提取图像

    我正在使用以下代码从 PDFA1 a 格式的 pdf 中提取图像 但我无法获取图像 List
  • 如何使用 Java 文档 API 为 OrientDB 数据库创建自动递增索引/序列?

    我通过其文档 API 将 OrientDB 与 Java 结合使用 我有一个简单的类叫做items它有一个属性ID 我明确声明架构如下 OSchema schema db getMetadata getSchema OClass items
  • 当我打印出数组列表的索引时如何删除最后一个逗号[重复]

    这个问题在这里已经有答案了 List
  • toArray 与预先确定大小的数组

    使用时ar toArray new String ar size 安卓工作室3 2 1警告预先确定大小的数组并建议空数组 有两种方式将集合转换为数组 使用 预先确定大小的数组 如 c toArray new String c size 或使
  • Apache Camel - 路由中的事务

    我有一个关于 Apache Camel 的一般性问题 我无法找到聚合器是否已进行交易 如果是交易 交易是如何实现的 聚合的速度有多快 将消息发送到聚合器可以在事务中运行 您需要一个带有聚合器的持久存储来让传出消息充当事务 请参阅有关持久性的
  • 在Linux中执行jar文件[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我创建了一个可执行的 Java jar 文件 也就是说 我将 java 程序正确打包到 jar 文件中 包括 META INF MANIFEST 文件
  • GSSAPI 中的 javax.naming.AuthenticationException

    我正在尝试使用 JAVA GSSAPI 执行 NTLM 绑定 我收到此错误 javax naming AuthenticationException GSSAPI 根异常是 javax security sasl SaslException
  • 何时对字符串文字使用 intern()

    我看到很多这样的遗留代码 class A public static final String CONSTANT value intern 我看不出使用 intern 的任何原因 因为在 Javadoc 中可以读到 所有文字字符串和字符串值
  • 尝试用Java实现基于文本的Hangman游戏

    我需要检查用户输入的字母以及他们猜测的空格是否位于隐藏单词的特定位置 变量one等于用户猜测的空间索引 而letterGuess是他们猜测的字母 我的代码怎么错了 示例 秘密词是你好 hidden word is 用户猜测h 0 1 2 3
  • 枚举

    我试图拥有一组扩展通用接口的枚举 例如 interface Fooable void someCommonMethod enum E1 implements Fooable some enumuerations and a definiti
  • 避免加密和编码的 URL 字符串中的换行符

    我正在尝试实现一个简单的字符串编码器来混淆 URL 字符串的某些部分 以防止它们被用户弄乱 我使用的代码几乎与示例中的相同JCA指南 http docs oracle com javase 6 docs technotes guides s
  • 不幸的是 Project_Name 已停止

    我有一个简单的应用程序 您可以在文本视图中输入文本并按提交 它会在另一个活动中显示文本 然而 当我按下提交时 给我消息 不幸的是 发送已停止 我查看了SO上的其他线程 但是不幸的是 myfirstproject 在 java 中停止工作错误
  • 如何在不下载子项的情况下从 Firebase 获取子项密钥?

    我有一个 Firebase 数据库 其中的节点 items 有很多子项 我想导入子项键的列表 由于每个子项都包含相当多我对此不感兴趣的数据 因此我想仅下载子项密钥 以最大程度地减少传输的数据量 为了便于说明 假设我有以下数据结构 然后我想获
  • 在地图中的图块上实现鼠标单击事件

    我正在尝试在 JPanel 上实现图像 基本上是地图上的图块 的鼠标单击事件 我只是不知道该怎么做 我有一个扩展 JPanel 的 Main 类 我正在从图块服务器检索图块 并根据特定的缩放级别在 Main 类的 PaintComponen
  • 项目级别的@PowerMockIgnore

    在 Maven 中运行时 我的 powermock 测试用例出现以下错误 java lang LinkageError loader constraint violation loader instance of org powermock
  • Cassandra 会话与集群 有什么可分享的?

    考虑 Cassandra 的 Session 和 Cluster 类 Java 驱动程序 我想知道有什么区别 在 Hibernate 中 每次都会创建一个会话并共享会话工厂 从许多来源我了解到 它被认为是创建一个会话并在多个线程之间共享它

随机推荐

  • 通过 Net:SSH 出现“非绝对主页”错误

    有问题的代码 Net SSH start server name user 这返回 非绝对家 用户 实际上有一个主目录 一种建议的方法是使用 IdentityFile 的完整路径修改 ssh config 这并没有解决问题 最疯狂的部分是
  • MATLAB:强制 doc 命令打开指定的参考 HTML 页面

    假设我在包中编写了一个类 名为mypackage myclass 我已经为包和类编写了自己的 HTML 文档 并将其包含在 MATLAB 帮助浏览器中 如下所述MATLAB 文档 我可以通过使用帮助浏览器直接导航到该 HTML 文档来显示该
  • 如何使用 Javascript 而不是 jQuery 用 JSON 数据动态填充 html 元素?

    我有以下 JSON 数据片段 items title sample 1 author author 1 title sample 2 author author 2 如何使用此数据填充以下 html 元素 div class news st
  • 在 iOS 中以编程方式将 SQLite 数据导出到 Excel

    在我的应用程序中 我使用 sqlite 作为后端 在本地存储数据 我能够将数据插入到我的表中 但是我想要做的是 想要以编程方式将所有 sqlite 数据导入到 excel 中 而且我不想为此应用程序使用服务器 一旦生成 excel 工作表
  • 检测 HiDPI Windows Phone 8 设备

    如何检测运行 Windows Phone 8 的 HiDPI 设备 我测试的手机是诺基亚 Lumia 920 它具有 4 5 英寸 1280 768 屏幕 即 gt 300 dpi IE支持min resolution在 CSS 中但不是m
  • 数组连接功能不起作用

    由于某种原因 我无法理解为什么我的数组连接方法不起作用 这是供审查的快速代码 function rot13 str LBH QVQ VG var strAry str split var transformed strAry map fun
  • Centos 5.5 上的 RabbitMQ 安装问题

    我一直在尝试让rabbitmq server 2 4 0在Centos上启动并运行 5 5 在 Amazon AWS 实例上 我的实例使用以下内核 2 6 18 xenU ec2 v1 2 我尝试使用以下方法安装 erlang 和rabbi
  • 动态禁用联系表单 7 字段验证

    在我的联系表单 7 中 我有两个单选按钮 它们根据用户所做的选择显示和隐藏联系表单中的字段 当您单击 电话 单选按钮时 脚本 JS 而非 jQuery 将确保隐藏电子邮件字段并仅显示电话字段 当您单击电子邮件单选按钮时 将显示电子邮件字段并
  • 在 XCode 中编译 IOS 应用程序时出现错误“文件未找到:-fobjc-arc”

    添加 OCMock 框架后 我收到了那个奇怪的错误 ld file not found fobjc arc clang error linker command failed with exit code 1 use v to see in
  • 运行包中的所有测试时出现 JUnit java.lang.OutOfMemoryError

    当加载包中的所有单元测试时 make 任务会抛出 java lang OutOfMemoryError Java 堆空间错误 不过 如果我运行每个子包中的所有测试 所有测试都会加载并完成 只有当我尝试运行父包中的所有测试时 才会出现 OOM
  • 是否可以使用 GSON 将带有句点的 JSON 属性名称反序列化为嵌套对象?

    这是我尝试使用 GSON 使用的 JSON 类型的示例 person name Philip father name Yancy 我想知道是否可以将此 JSON 反序列化为以下结构 public class Person private S
  • JavaScript 中以 20(或 X)为步长舍入?

    我的数字从 50 开始到 190 结束 步数始终为 20 gt 50 70 90 190 现在我从文本文件中得到一个数字 该数字必须根据此进行四舍五入 因此 如果我得到 55 它应该变成 70 如果我得到 77 它应该是 90 如果我得到
  • 无法从 iOS 7 中的 App Store 收据获取original_application_version

    我正在尝试为当前客户实现从付费模式到免费增值模式的无缝过渡 但在从收据中获取original application version 时遇到问题 我的应用程序仅适用于 iOS 7 您可能知道 Apple 在 iOS 7 中引入了统一收据 如
  • 现有 Angular 4 项目中的 Ionic 框架

    我正在使用自己的 CSS 进行 Angular 项目 现在几乎已经完成了 我想在我的项目中使用带有 cordova 的 ionic 框架 我尝试过 但它不起作用 有没有什么方法和分步过程可以在我现有的 Angular 4 项目中添加离子框架
  • 实例化核心 Volley 对象

    我对 Volley 有点不确定的是 RequestQueue ImageLoader 对象和 ImageLoader ImageCache 实现 在我遇到的示例中 它们在 onCreate 中实例化 但为每个活动创建新的请求队列似乎没有意义
  • 如何将 XPath 与 XDocument 一起使用?

    有一个类似的问题 但似乎该解决方案在我的情况下不起作用 XDocument XPath 和名称空间的怪异之处 这是我正在使用的 XML
  • 没有路由匹配 [GET] /assets

    我有一个 Rails 应用程序 我正在尝试在生产环境中测试它 我跑了RAILS ENV production rake assets precompile它在 public assets 中生成了我的所有资产 问题是当我启动我的应用程序时R
  • 如何在应用程序中访问 Play Framework 2.4 guice Injector?

    我想使用getInstance吉斯法InjectorPlay Framework 2 4 中的类 我如何访问它 我用过吉斯FactoryModuleBuilder用于实现一个在运行时返回另一个工厂的工厂 在返回工厂的第二级 我需要访问 Pl
  • SecItemAdd 在 iOS 10 模拟器中的 Xcode 8 中始终返回错误 -34018

    Update 此问题已在 Xcode 8 2 中修复 钥匙串在模拟器中工作 无需启用钥匙串共享 为什么我always调用时接收错误 34018SecItemAdd功能在 Xcode 8 iOS 10 模拟器中 重现步骤 在 Xcode 8
  • java中获取文件路径

    java程序有没有办法确定它在文件系统中的位置 您可以使用CodeSource getLocation 为了这 这CodeSource可以通过ProtectionDomain getCodeSource The ProtectionDoma