您的位置:首页技术文章
文章详情页

java 文件路径问题

浏览:83日期:2023-12-27 18:47:52

问题描述

问题

windows下路径分割符’’,java程序可识别的是’’或’/’,通过用户输入的路径进行转换,变成程序可识别的,但是转化后的路径程序不识别。

程序

import java.io.FileNotFoundException;import java.io.FileReader;import java.util.Scanner;

public class test {

public static void main(String[] args) { // TODO 自动生成的方法存根 String path=null; System.out.println('请输入文件路径'); Scanner in=new Scanner(System.in); //输入文件路径 'C:UserslenovoDesktop新建 Microsoft Excel 工作表.xlsx' path=in.nextLine().replaceAll('', '/'); System.out.println(path); //得到系统识别的路径 path='C:/Users/lenovo/Desktop/新建 Microsoft Excel 工作表.xlsx' //path='C:/Users/lenovo/Desktop/新建 Microsoft Excel 工作表.xlsx';File file=new File(path); //此时系统找不到文件,但是 将path='C:/Users/lenovo/Desktop/新建 Microsoft Excel 工作表.xlsx';执行后 程序能找到文件,问题就是 path已经是'C:/Users/lenovo/Desktop/新建 Microsoft Excel 工作表.xlsx',但程序不识别,怎么回事 try {FileReader fileReader=new FileReader(file);System.out.println('读入文件'); } catch (FileNotFoundException e) {// TODO 自动生成的 catch 块System.out.println('文件未找到'); }}

}

问题解答

回答1:

-。-好像没毛病,你对比下你能成功的path(就是你注释掉的)和输入后转换过的path

回答2:

你可以尝试

'C:UserslenovoDesktop新建 Microsoft Excel 工作表.xlsx'回答3:

我跑了一下你的代码,没问题啊,中文的文件名也能识别。

标签: java
相关文章: