java 系统找不到路径_java IOException:系统找不到指定的路径
在开发中,我们可能经常会碰到一个系统找不到指定路径的IO异常。今天我们就来看看,java中的路径究竟是哪个路径。先看一段代码:
packagecom.cloud.test;
importjava.io.File;
importjava.io.IOException;
publicclassTestPath {
publicstaticvoidmain(String[] args) {
File file = newFile("a.txt");
if(!file.exists()){
try{
file.createNewFile();
} catch(IOException e) {
e.printStackTrace();
}
}
}
}
运行会发现,我们的a.txt新建到了工程目录下:
这里的参数a.txt,其实就是指相对路径下的a.txt,这里的相对路径,就是指相对于工程根目录来说的路径,比如我们稍微改下程序:
packagecom.cloud.test;
importjava.io.File;
importjava.io.IOException;
publicclassTestPath {
publicstaticvoidmain(String[] args) {
File file = newFile("src/com/b.txt");
if(!file.exists()){
try{
file.createNewFile();
} catch(IOException e) {
e.printStackTrace();
}
}
}
}
运行可以发现,我们在src下的com目录下,又新建了一个b.txt文件
以上两个程序中,使用的都是相对路径,这里的相对路径,是相对于工程根目录而言的,所以这里的src前面一定不能有"/",或者就会报系统找不到指定路径的IO异常。
需要说明的是,以上程序在eclipse等开发工具中是没有问题的,但是如果我们用控制台运行的话,就会报我们我们说的系统找不到指定路径的IO异常
这里,我们最好使用绝对路径。
所谓绝对路径,也即指文件的物理路径,在linux中是指以"/"开头的路径,在windows中,也就是盘符开头的路径(其实也是"/"开头),比如:"F:\java",所以这里我们可以再F盘的java目录下新建一个c.txt文件,当然这里的"\"需要转义,或者会报语法错误。
packagecom.cloud.test;
importjava.io.File;
importjava.io.IOException;
publicclassTestPath {
publicstaticvoidmain(String[] args) {
File file = newFile("F:\\java\\c.txt");
if(!file.exists()){
try{
file.createNewFile();
} catch(IOException e) {
e.printStackTrace();
}
}
}
}
运行可以看到,在F盘的java目录下,新建了c.txt文件。
但是现在还有一个问题,我们按照上面所说的方式可以把程序新建的文件创建在在F盘java目录下,但是我如果要读取文件呢,这里不一定每个用户都会在指定位置新建指定文件,所以,我们的资源文件一般都是在项目工程中,我们可以通过下面这种方式读取:
packagecom.cloud.test;
importjava.io.File;
publicclassTestPath {
publicstaticvoidmain(String[] args){
File file = newFile(TestPath.class.getResource("/com/b.txt").getFile());
System.out.println(TestPath.class.getResource("/").getFile());
System.out.println(TestPath.class.getResource("/com/b.txt").getFile());
System.out.println(file.getPath());
}
}
这里我们使用TestPath.class.getResource,获取到的是类TestPath的绝对路径,注意这里必须得有"/",并且参数是从包名开始的(而不是src)。程序运行输出如下:
可以看到,通过这种方式,就不会再报系统找不到指定路径问题了,赶紧试试吧。
java 系统找不到路径_java IOException:系统找不到指定的路径相关推荐
- java无法加载主类_java运行显示“找不到或无法加载主类”!
java运行显示"找不到或无法加载主类"!一般都自然想到是环境没配置好.但是 也可能是,绝对路径的问题. 今天一个不会java的朋友也不知道从哪整了一个java文件让我帮忙运行一下 ...
- java读取文件 路径_Java中的获取文件的物理绝对路径,和读取文件
获取文件的绝对路径,读取该文件 一.文件目录打印图 下面的文件目录图,是项目中文件的位置信息:下面的例子是按照这个图来演示的. . |-- java | |-- ibard | | |-- demo1 ...
- java找不到符号_java编译时找不到符号,怎么处理
已采纳 java编译时提示找不到符号的解决方式如下: 方法一: 进入d:/web/wsh下: javac a.java 然后退出wsh目录即进入d:/wsh下 javac wsh/b.java即可编译 ...
- java 获取ftp 文件路径_java在浏览器上获取FTP读文件路径
展开全部 问一下,你是62616964757a686964616fe4b893e5b19e31333337623437想做ftp上传下载么? 首先你需要安装一个ftp服务端程序,启动起来,然后下载一个 ...
- java编译找不到文件_java报错找不到文件解决方法
刚开始编写java代码时,肯定会遇到各种各样的bug,当然对于初学者这也是能理解的,首先来说一个比较常见的错误,如下: 一般编写新的程序时,都是从Hello,World开始的,比如在DOS上运行jav ...
- java表单自动绑定数据_java工作流系统表单自动 获取数据
关键词:工作流快速开发平台 工作流流设计 业务流程管理 asp.net 开源工作流 bpm工作流系统 java工作流主流框架 自定义工作流引擎 表单设计器 流程设计器 什么是数据自动获 ...
- java 获取ftp路径_Java Source 根据输入 ftp 地址 账号 密码 路径 读取提供路径下的文件...
参考上面的: 引用jar包 ganymed-ssh2-build210.jar jar 包放在 $ORACLE_HOME/sqlj/lib 执行loadjava命令 加载jar包 路径下 执行 ...
- java登录注册抽奖完整代码_Java抽奖系统(附完整代码)
完整代码import java.util.Scanner;import java.util.ArrayList;import java.io.*;import java.util.StringToke ...
- java 错误 找不到符号_Java错误:找不到符号,也找不到原因
错误: error: cannot find symbol 出现的内容不起作用: 如果我写:" InvoerVakhandler扩展了boven",则该错误消失了,但是随后我得到了 ...
- java 判断ftp文件是否存在_java如何检验ftp服务器中指定文件是否存在
详细内容 项目工作中,需要检验ftp服务器中指定文件是否存在,在网上查阅了相关资料,可以通过ftpClient类进行实现. 免费学习视频教程分享:java课程 具体实现代码:import org.ap ...
最新文章
- lamp下mysql安全加固
- linux下的strerror和perror
- Tesseract-OCR 字符识别-样书训练
- 谈谈 Python 程序的运行原理
- linux container 原理,容器概念与Linux Container原理
- 美团骑手检测出虚假定位_在虚假信息活动中检测协调
- 我们应该学习什么 java、C#还是C++(VC)
- 保镖机器人作文_关于机器人作文400字
- 有了这个框架,平台开发谁还手敲代码?
- 中雅图帕尼尼_凝聚意大利足球50年辉煌 中雅图引进帕尼尼意甲球星贴
- 百度之星资格赛1003:度度熊与邪恶大魔王
- 21-微信小程序商城 会员首页(微信小程序商城开发、小程序毕业设计、小程序源代码)(黄菊华-微信小程序开发教程)
- dedecms采集经验
- 矩阵理论——Smith标准型的学习
- 2020年,程序员如何优雅地赚更多的钱?
- java log viewer,LogViewer - 方便的日志查看工具
- 微信小程序实现音乐搜索页面
- 已故女孩在微博“复生”追星,你的数据资产谁说了算?
- Kafka 安装、使用
- 第二天 05-安装win7系统与远程桌面开启
热门文章
- 解决依赖包引入后重复问题Duplicate zip entry
- 单片机花灯开关控制器C语言代码,以51单片机为核心的LED彩灯控制器设计
- 微软私有云系列 ----SQL 云部署
- python——txt文本处理
- 学习《华为基本法》(大结局):法的修订与接班人
- TranslateAnimation 使用详解
- HTML关闭网页弹出窗口代码
- c语言课程火车售票报告,C语言课程设计报告书火车票务管理系统.doc
- 卡刷su+android7,supersu最新版卡刷包
- et99php,加密锁/加密狗ET199(包含网络锁功能)